Documente Academic
Documente Profesional
Documente Cultură
IP Teorie
IP Teorie
Cea mai bună metodă de creare Metoda Factory: o clasă simplă pentru Abstract Factory: o interfaţă pentru crearea Memento
de obiecte, astfel încât programul să nu luarea unei decizii- întoarce una din mai şi returnarea uneia dintre mai multe familii Scop: capteaza si externalizeaza starea
depindă de modul în care acestea sunt multe subclase posibile ale unei clase, în de obiecte relaţionate interna a unui obiect astfe; incat obiectul
create funcţie de datele pe care le primeşte Scop Oferă o interfaţă pentru crearea de poate fi restaurant in aceasta stare mai
Abstractizarea procesului de creaţie, într-o Scop Defineşte o interfaţă pentru crearea familii de obiecte înrudite sau dependente tarziu, fara a sparge incapsularea
clasă specială “creator”- pentru mai multă unui obiect, dar lasă subclasele să decidă ce fără specificarea claselor lor concrete Aplicabilitate:
flexibilitate clasă să instanţieze. Aplicabilitate Cand (o parte din) starea unui obiect trebuie
Factory Method, Prototype, Metoda Factory permite unei clase să Sistemul trebuie să fie independent de cum salvata pentru a readuce mai tarziu obiectul
Abstract Factory, Singleton, Composite, defere instanţierea subclaselor sunt create, compuse şi reprezentate in aceasta stare
Aplicabilitate produsele sale Cand o interfata directa pentru obtinerea
O clasă nu poate anticipa clasa obiectelor pe Sistemul trebuie configurat de una din mai starii ar expune detalii de implementare si
care trebuie să le creeze multe familii de produse ar sparge incapsularea obiectului
Command, Observer, Mediator
O clasă doreşte ca subclasele sale să Trebuie forţat ca o familie de obiecte Consecinte:
specifice obiectele pe care le creează produs să fie folosite împreună Protejeaza granitele incapsularii
Decorator Clasele delegă responsibilitatea uneia sau Consecinte Simplifica Originatorul: acesta nu e nevoit sa
-Modificarea comportamentului obiectelor mai multor subclase ajutătoare 1 Izolarea claselor concrete: apar în retina stari anterioare la care ar fi necesar sa
individuale fără să creeze o clasă derivată Consecinte ConcreteFactories nu în codul clientului revina
nouă Elimină legarea între clasele specifice 2 Facilitează schimbul de familii de Uneori folosirea este costisitoare: daca este
-Acesta este un alt caz în care este aplicaţiei din cod produse:un ConcreteFactory apare într-un multa informative de copiat sau atunci cand
favorizată relaţia de conţinere asupra (codul de creare foloseşte doar interfaţa singur loc clientii creaza des memento-uri
moştenirii clasei Product ) 3 uşor de modificat: Promovează Costuri ascunse in manevrarea memento-
-Decoratorul este un obiect grafic, dar Facilitează derivarea consistenţa între produse; toate produsele urilor: un caretaker nu stie exact cat sa aloce
conţine obiectul pe care îl decorează.Poate subclasele pot astfel modifica produsul unei familii se modifică împreună, în acelaşi pentru stocarea unui memento
apela metode grafice, poate executa calcule creat; timp
adiţionale, şi le poate trimite către obiectul Poate conecta ierarhii paralele de clase;lasă 4 Este dificilă susţinerea de tipuri noi de
conţinut şi decorat clienţii să apeleze FM ; produse: necesită o modificare în interfaţa
Clienţii ar trebui să deriveze din Creator AbstractFactory şi a tuturor subclaselor sale,
doar pentru a crea un anumit obiect în consecinţă
ConcreteProduct.