Junior
Kokius projektavimo šablonus žinote?
sobes.tech AI
Atsakymas iš AI
-
Kūrybiniai
- Fabrikinis metodas (būdas kurti objektus naudojant fabrikinį metodą, o ne tiesiogiai per konstruktorių)
- Abstrakti fabrikas (sąsaja kurti susijusių objektų šeimas be jų konkrečių klasių nurodymo)
- Statytojas (žingsnis po žingsnio kuria sudėtingus objektus, leidžia gauti skirtingus objekto variantus naudojant tą patį statybos kodą)
- Prototipas (kuria naujus objektus kopijuodamas esamą pavyzdį)
- Vienintelis (užtikrina, kad egzistuotų tik vienas klasės egzempliorius ir suteikia prieigą prie jo globaliai)
-
Struktūriniai
- Adapteris (leidžia nesuderinamiems sąsajų objektams dirbti kartu)
- Tiltas (atskiria abstrakciją nuo įgyvendinimo, leidžia jiems keistis nepriklausomai)
- Kompozitas (leidžia elgtis kaip su atskirais objektais ir jų grupėmis)
- Dekoratorius (dinamiškai prideda naujas atsakomybes prie objektų)
- Fasadas (suteikia vieningą sąsają prie sub-sistemų rinkinio)
- Pritaikytojas (efektyviai valdo didelį kiekį mažų objektų)
- Pakeitėjas (suteikia pakeitimo objektą, kuris kontroliuoja prieigą prie kito objekto)
-
Elgsenos
- Atsakomybės grandinė (perduoda užklausas per apdorotojų grandinę)
- Komanda (įkapsuliuoja užklausą kaip objektą, leidžia parametrizuoti klientus, eilėje dėti užklausas, registruoti ir atšaukti operacijas)
- Iteratorius (suteikia būdą sekančiam prieigai prie sudėtingo objekto elementų, neatskleidžiant jo vidinės struktūros)
- Tarpininkas (supaprastina sąveiką tarp daugelio objektų, įvedant tarpininko objektą)
- Saugykla (leidžia išsaugoti ir atkurti objekto vidinę būseną, nepažeidžiant jo inkapsuliacijos)
- Stebėtojas (nustato "vienas prie daug" priklausomybę tarp objektų, taigi kai keičiasi vieno būseną, visi priklausomi objektai yra įspėjami ir atnaujinami)
- Būsenos (leidžia objektui keisti savo elgesį priklausomai nuo vidinės būsenos)
- Strategija (nustato algoritmų šeimą, juos inkapsuliuoja ir daro keičiamus)
- Šablono metodas (pagrindiniame klasėje apibrėžia algoritmo skeletą, leidžia pogrupiams perrašyti kai kuriuos žingsnius be visos struktūros keitimo)
- Lankytojas (leidžia pridėti naujas operacijas prie klasių hierarchijos be pačių klasių keitimo)
Android kūrime dažnai naudojami MVx šablonai (MVP, MVVM), taip pat Android Architecture Components bibliotekos šablonai (Room, ViewModel, LiveData, Navigation).