Sobes.tech
Junior

Jaké vzory návrhu znáte?

sobes.tech AI

Odpověď od AI

  • Vytváření

    • Fabriková metoda (způsob vytváření objektů pomocí továrního vzoru, nikoli přímo přes konstruktor)
    • Abstrární továrna (rozhraní pro tvorbu souvisejících rodin objektů bez specifikace jejich konkrétních tříd)
    • Builder (krok za krokem tvorba složitých objektů, umožňující získat různé varianty objektu pomocí stejného konstrukčního kódu)
    • Prototyp (vytváření nových objektů kopírováním existujícího vzoru)
    • Singleton (zaručuje, že existuje pouze jedna instance třídy a poskytuje k ní globický přístup)
  • Strukturální

    • Adaptér (umožňuje objektům s nekompatibilními rozhraními spolupracovat)
    • Most (odděluje abstrakci od implementace, umožňuje jejich nezávislou změnu)
    • Seskupovač (zachází s jednotlivými objekty i skupinami objektů stejně)
    • Dekorátor (dynamicky přidává objektem nové odpovědnosti)
    • Fasáda (poskytuje sjednocené rozhraní k sadě rozhraní podsystemu)
    • Flyweight (efektivně spravuje velké množství malých objektů)
    • Proxy (poskytuje náhradní objekt, který řídí přístup k jinému objektu)
  • Chování

    • Řetězec odpovědností (předává požadavky po řetězci zpracovatelů)
    • Příkaz (zabalí požadavek jako objekt, umožňuje parametrizovat klienty, zařadit požadavky do fronty, zaznamenávat je a podporovat jejich vrácení)
    • Iterátor (poskytuje způsob, jak sekvenčně přistupovat ke všem prvkům složeného objektu, aniž by odhalil jeho vnitřní strukturu)
    • Mediátor (zjednodušuje interakci mezi více objekty zavedením mediátoru)
    • Memento (umožňuje uložit a obnovit vnitřní stav objektu bez narušení jeho zapouzdření)
    • Pozorovatel (definuje závislost 1:n mezi objekty, takže když se jeden změní, všichni závislí jsou automaticky upozorněni a aktualizováni)
    • Stav (umožňuje objektu měnit své chování v závislosti na vnitřním stavu)
    • Strategie (definuje rodinu algoritmů, kapsuluje je a činí je zaměnitelnými)
    • Šablonová metoda (definuje skelet algoritmu v metodě, umožňuje podtřídám předefinovat některé kroky bez změny jeho struktury)
    • Návštěvník (umožňuje přidávat nové operace do hierarchie tříd bez jejich změny)

V Android vývoji se často používají vzory MVx (MVP, MVVM) a vzory z knihovny Android Architecture Components (Room, ViewModel, LiveData, Navigation).