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.