Sobes.tech
Middle

Kādus projektēšanas modeļus jūs zināt?

sobes.tech AI

Atbilde no AI

Radītāji:

  • Faktoru metode (Factory Method): Nosaka saskarni objekta radīšanai, bet ļauj apakšklasēm izlemt, kuru klasi instancēt.
  • Abstraktā fabrika (Abstract Factory): Nodrošina saskarni saistītu vai savstarpēji atkarīgu objektu ģimenes radīšanai, neizpaužot to konkrētās klases.
  • Būvētājs (Builder): Atdala sarežģīta objekta būvniecību no tā attēlojuma, ļaujot ar vienu būvniecības procesu izveidot dažādus attēlojumus.
  • Prototips (Prototype): Izveido jaunas objektu kopijas, klonējot esošo eksemplāru.
  • Vienotais (Singleton): Nodrošina, ka klasei ir tikai viens eksemplārs, un nodrošina globālu piekļuvi šim eksemplāram.

Strukturālie:

  • Pielāgotājs (Adapter): Pārvērš viena klases saskarni citā, ko klienti sagaida.
  • Tilts (Bridge): Atdala abstrakciju no tās īstenošanas, ļaujot tām mainīties neatkarīgi.
  • Kombinācija (Composite): Apvieno objektus koka struktūrā, lai attēlotu daļu-visa hierarhijas. Kombinācija ļauj klientiem strādāt ar atsevišķiem objektiem un to kompozīcijām vienādi.
  • Dekorators (Decorator): Dinamiski pievieno objektam jaunas atbildības. Tas ir elastīgāka alternatīva apakšklasēm funkcionalitātes paplašināšanai.
  • Fasāde (Facade): Nodrošina vienotu saskarni apakšsistēmas funkcijām. Fasāde definē augstākā līmeņa saskarni, kas padara apakšsistēmas lietošanu vienkāršāku.
  • Lidojošais svars (Flyweight): Efektīvi dalās starp daudz līdzīgiem objektiem.
  • Proksijs (Proxy): Nodrošina aizstājējošu objektu, kas kontrolē piekļuvi citam objektam.

Uzvedības:

  • Atbildības ķēde (Chain of Responsibility): Ļauj pārsūtīt pieprasījumus secīgi pa apstrādātāju ķēdi. Katrs apstrādātājs lemj, vai apstrādāt pieprasījumu vai to pārsūtīt nākamajam ķēdē.
  • Komanda (Command): Inkapsulē pieprasījumu kā objektu, ļaujot parametru dažādus klientus, rindot pieprasījumus, reģistrēt vai atcelt tos.
  • Iterators (Iterator): Nodrošina veidu, kā secīgi piekļūt strukturētam objektam, nesniedzot informāciju par tā iekšējo struktūru.
  • Mediator (Mediators): Definē objektu, kas inkapsulē, kā objekti sadarbojas. Mediators veicina vāju saistību, novēršot tiešas atsauces starp objektiem.
  • Memento: Bez inkapsulācijas pārkāpšanas fiksē un ārēji saglabā objekta iekšējo stāvokli, ļaujot to vēlāk atjaunot.
  • Vērotājs (Observer): Definē "viens pret daudz" atkarību starp objektiem tā, ka, mainoties viena objekta stāvoklim, visi atkarīgie automātiski tiek informēti un atjaunināti.
  • Stāvoklis (State): Ļauj objektam mainīt savu uzvedību, mainoties tā iekšējai stāvoklim. Izskatās, it kā objekts mainītu savu klasi.
  • Stratēģija (Strategy): Definē algoritmu ģimeni, inkapsulē katru algoritmu un padara tos aizvietojamus. Stratēģija ļauj algoritmam mainīties neatkarīgi no klientiem, kas to izmanto.
  • Šablona metode (Template Method): Definē algoritma skeletu operācijā, atstājot dažus soļus apakšklasēm. Šablona metode ļauj apakšklasēm pārdefinēt dažus algoritma soļus, nemainot tā struktūru.
  • Viesis (Visitor): Attēlo operāciju, kuru nepieciešams veikt struktūras elementiem. Viesis ļauj definēt jaunu operāciju bez elementu klases izmaiņām, ar kuriem tas darbojas.