Junior — Middle
Proqram təminatı inkişafında 'Fabrika' nümunəsinin işləmə prinsipi və məqsədini izah edin.
sobes.tech Süni İntellekt
AI-dan cavab
Паттерн «Фабрика» (Factory) предназначен для создания объектов без необходимости явно указывать конкретный класс создаваемого объекта. Это позволяет отделить код создания объектов от их использования, облегчая расширение и поддержку.
В Flutter (и Dart) паттерн фабрики часто используется для создания виджетов или сервисов, где конкретный тип объекта выбирается динамически.
Пример:
abstract class Button {
void render();
}
class AndroidButton implements Button {
@override
void render() => print('Android Button');
}
class IOSButton implements Button {
@override
void render() => print('iOS Button');
}
class ButtonFactory {
static Button createButton(String platform) {
if (platform == 'android') {
return AndroidButton();
} else if (platform == 'ios') {
return IOSButton();
} else {
throw Exception('Unsupported platform');
}
}
}
void main() {
var button = ButtonFactory.createButton('android');
button.render(); // Выведет: Android Button
}
Такой подход упрощает добавление новых типов кнопок без изменения клиентского кода.