Junior — Middle
Kodda fabrik metodunun tətbiqi nümunəsini göstərə bilərsinizmi?
sobes.tech Süni İntellekt
AI-dan cavab
Fabrika metodu nümunəsi, yaradılacaq obyektin konkret sinfini göstərmədən obyektlər yaratmağa imkan verir. Flutter-də bu, müxtəlif məntiqə malik vidjetlərin yaradılması üçün əlverişlidir.
Dart-də tətbiq nümunəsi:
abstract class Button {
void render();
}
class AndroidButton implements Button {
@override
void render() {
print('Android üslubunda düyməni render et');
}
}
class IOSButton implements Button {
@override
void render() {
print('iOS üslubunda düyməni render et');
}
}
abstract class Dialog {
Button createButton();
void render() {
Button button = createButton();
button.render();
}
}
class AndroidDialog extends Dialog {
@override
Button createButton() => AndroidButton();
}
class IOSDialog extends Dialog {
@override
Button createButton() => IOSButton();
}
void main() {
Dialog dialog;
// Platforma əsasən, lazım olan dialoqu yaradın
bool isAndroid = true;
if (isAndroid) {
dialog = AndroidDialog();
} else {
dialog = IOSDialog();
}
dialog.render();
}
Bu nümunədə, fabrik metodu createButton alt siniflərin müxtəlif növ düymə obyektləri yaratmasına imkan verir və müştəri kodu abstraksiyalar ilə işləyir.