Junior
Koje šablone dizajna poznajete?
sobes.tech АИ
Одговор од АИ
-
Порождени
- Фабрички метод (начин за креирање објеката преко фабрички метод, а не директно преко конструктор)
- Апстрактна фабрика (интерфејс за креирање породица повезаних објеката без да се наведу конкретни класи)
- Конструктор (пошагово креирање сложених објеката, омогућавајући добијање различитих варијанти објекта користећи исти код за изградњу)
- Прототип (креирање нових објеката копирањем постојећег узора)
- Јединац (гарантује да постоји само један пример класе и пружа глобални приступ њему)
-
Структурни
- Адаптер (омогућава објектима са несагласним интерфејсима да раде заједно)
- Мост (дели апстракцију и реализацију, омогућавајући им да се мењају независно)
- Компоновање (омогућава третирање појединачних објеката и њихових група на исти начин)
- Декоратор (динамично додаје нове одговорности објектима)
- Фасада (пружа усклађени интерфејс за скуп интерфејса подсистема)
- Приспособљеник (ефикасно управља великим бројем малих објеката)
- Замена (пружа замену за објекат који контролише приступ другом објекту)
-
Поведенски
- Ланац одговорности (преноси захтеве кроз ланац обрада)
- Команда (инкапсулира захтев као објекат, омогућавајући параметризовање клијената, стављање захтева у ред, логовање и подршку за отказивање)
- Итератор (пружа начин за последователни приступ свим елементима сложеног објекта, без откривања његове унутрашње структуре)
- Посредник (поједностављује интеракцију између више објеката увођењем посредничког објекта)
- Чувао (омогућава чување и враћање унутрашњег стања објекта без кршења његове инкапсулације)
- Посматрач (одређује зависност "један према много" између објеката, тако да када се стање једног промени, сви зависни објекти буду обавештени и ажурирани)
- Стање (омогућава објекту да мења своје понашање у зависности од унутрашњег стања)
- Стратегија (одређује породицу алгоритама, инкапсулира сваки од њих и чини их заменљивим)
- Шаблонски метод (у основној класи дефинише скелет алгоритма уметод, омогућавајући подкласи да пренапишу неке кораке без промене целокупне структуре)
- Посетилац (омогућава додавање нових операција у хијерархију класа без промене сама класа)
У Android развоју често се користе MVx-шаблони (MVP, MVVM), као и шаблони из библиотеке Android Architecture Components (Room, ViewModel, LiveData, Navigation).