Design Paterns - Creational Paterns

Referat
7.5/10 (2 voturi)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 16 în total
Cuvinte : 1477
Mărime: 92.33KB (arhivat)
Publicat de: Constantin Kovacs
Puncte necesare: 5
Profesor îndrumător / Prezentat Profesorului: Aflori Cristian
AC, Iasi 2007 Master

Cuprins

  1. 1. Aspecte teoretice 3
  2. 2. Creational Patterns 4
  3. 2.1. Factory pattern 4
  4. 2.2. Builder pattern 7
  5. 2.3. Abstract factory pattern 9
  6. 2.4. Prototype pattern 12
  7. 2.5. Singleton pattern 14

Extras din referat

Scopul referatului

Acest referat are drept scop realizarea unei imagini de ansamblu asupra asa numitelor “Design Patterns – Creational Patterns”. Pe parcursul sau se va urmari prezentarea aspectelor teoretice precum si argumentarea sau exemplificarea acestora cu exemple practice.

1. Aspecte teoretice

Pentru inceput este necesara o explicare a termenului de ”Design Paterns”. Pe scurt ”Design Patterns” poate fi tradus ca ”Modele de Proiectare” (ale unor situatii des intalnite in programare).

Un „Design pattern” reprezinta o solutie generala repetitiva pentru o problema comuna ce poate aparea in dezvoltarea unui software. Acesta nu este altceva decat un template care descrie modul in care poate fi rezolvata o anumita problema.

Clasificarea acestora se poate face dupa tipul de problema pentru care ofera o solutie:

- Architectural patterns;

- Fundamental patterns;

- Creational patterns

- Structural Patterns;

- Behavioral Patterns;

- Concurrency patterns;

2. Creational Patterns

In ceea ce priveste „Creational patterns”, acestea descriu cea mai potrivita modalitatea de a crea obiecte in functie de situatia data. Acestea controleaza crearea obiectelor.

Aceasta clasa de pattern-uri contine::

- Factory Method;

- Builder;

- Abstract factory;

- Prototype;

- Singleton;

2.1. Factory pattern

Uneori o aplicatie aflata in executie nu poate anticipa clasa din care face parte un obiect ce trebuie instantiat. Aplicatia „stie” ca trebuie sa instantieze clase, dar nu este constienta decat de clase abstracte sau interfete, care nu pot fi instantiate. Asadar se cunoaste momentul la care trebuie creata o instanta, dar nu se stie si tipul obiectului de instantiat. Solutia pentru aceasta problema este data de catre „Factory Pattern”.

Pe scurt, prin aceasta metoda se centralizeaza modul in care poate fi creat un obiect de un anumit tip, fiind permisa alegerea tipului obiectului ce va fi instantiat dintr-o multime de tipuri date.

Aceasta metoda furnizeaza o modalitate simpla de creare a unui obiect fara a se specifica exact tipul (clasa) din care va fi instantiat obiectul, insa specificand o data (entitate) pe baza careia sa se ia decizia.

“Define an interface for creating an object, but let subclasses decide which class to instantiate. Factory Method lets a class defer instantiation to subclasses.” -- "Design Patterns” Gamma et al., Addison-Wesley, ISBN:0-201-63361-2”

Acest pattern presupune crearea unei instante(pentru o clasa) pe baza deciziei luate tinand cont de datele furnizate.

Diagrama UML:

Preview document

Design Paterns - Creational Paterns - Pagina 1
Design Paterns - Creational Paterns - Pagina 2
Design Paterns - Creational Paterns - Pagina 3
Design Paterns - Creational Paterns - Pagina 4
Design Paterns - Creational Paterns - Pagina 5
Design Paterns - Creational Paterns - Pagina 6
Design Paterns - Creational Paterns - Pagina 7
Design Paterns - Creational Paterns - Pagina 8
Design Paterns - Creational Paterns - Pagina 9
Design Paterns - Creational Paterns - Pagina 10
Design Paterns - Creational Paterns - Pagina 11
Design Paterns - Creational Paterns - Pagina 12
Design Paterns - Creational Paterns - Pagina 13
Design Paterns - Creational Paterns - Pagina 14
Design Paterns - Creational Paterns - Pagina 15
Design Paterns - Creational Paterns - Pagina 16

Conținut arhivă zip

  • Design Paterns - Creational Paterns.doc

Alții au mai descărcat și

Arhitectura calculatoarelor - Intel vs AMD

Rezultatele din testul 3DS Max 7 SPECapc Test Testul alaturat consta in crearea modelelor 3D, modificarea si randarea scripturilor. Conform...

Autentificarea prin semnătură digitală

Introducere O semnatura digitala reprezinta o informatie care il identifica pe expeditorul unui document. Semnatura digitala este creata prin...

Placa de Bază

Caracteristici generale ale placii de baza Placa de baza este un dizpozitiv ‘de baza’ un ‘pamânt’ pe care ‘se planteaza’ celelalte componente ....

Sistem de Prognosticare a Unei Avarii

Acest sistem calculeaza gradul de avariere a unei cladiri în cazul unui cutremur, precum si posibila necesitate a reconstructiei cladirii (partiala...

Ai nevoie de altceva?