Back to questions
Junior — Middle
115
Можешь привести пример применения определенных шаблонов проектирования в разработке программного обеспечения?
Answer from AI
sobes.tech AI
В разработке на Flutter часто применяются следующие шаблоны проектирования:
-
MVVM (Model-View-ViewModel): разделяет логику представления и бизнес-логику, что упрощает тестирование и поддержку. Например, ViewModel содержит состояние и логику, а View — только отображение.
-
Singleton: используется для создания единственного экземпляра класса, например, для управления состоянием приложения или доступа к базе данных.
-
Builder: помогает создавать сложные виджеты поэтапно, улучшая читаемость кода.
Пример использования Singleton для управления состоянием:
class AppState {
static final AppState _instance = AppState._internal();
factory AppState() => _instance;
AppState._internal();
int counter = 0;
}
void main() {
var state1 = AppState();
var state2 = AppState();
state1.counter++;
print(state2.counter); // Выведет 1, так как state1 и state2 — один экземпляр
}