Back to questions
Andersen
Junior — Middle
106
Можешь перечислить основные шаблоны проектирования, связанные с созданием объектов?
Companies where asked
Answer from AI
sobes.tech AI
Основные шаблоны проектирования, связанные с созданием объектов, включают:
- Singleton — гарантирует, что класс имеет только один экземпляр, и предоставляет глобальную точку доступа к нему.
- Factory Method — определяет интерфейс для создания объекта, позволяя подклассам решать, какой класс инстанцировать.
- Abstract Factory — предоставляет интерфейс для создания семейств связанных объектов без указания их конкретных классов.
- Builder — отделяет конструирование сложного объекта от его представления, позволяя создавать разные представления.
- Prototype — создает новые объекты копированием существующих (клонированием).
Пример Factory Method на Dart (Flutter):
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');
}
abstract class Dialog {
Button createButton();
void render() {
var button = createButton();
button.render();
}
}
class AndroidDialog extends Dialog {
@override
Button createButton() => AndroidButton();
}
class IOSDialog extends Dialog {
@override
Button createButton() => IOSButton();
}
void main() {
Dialog dialog = AndroidDialog();
dialog.render(); // Выведет: Android Button
}