Universitatea "Babes-Bolyai" Cluj-Napoca
Facultatea de Matematica si Informatica
FISA DISCIPLINEI

Sabloane de proiectare
Cod
Semes-
trul
Ore: C+S+L
Credite
Tipul
Sectia
MI095
7
2+0+2
6
optionala
Informatică
MI095
7
2+0+2
6
optionala
Matematică-Informatică
Cadre didactice indrumatoare
Prof. Dr. PÂRV Bazil, bparv@cs.ubbcluj.ro
Lect. Dr. DARVAY Zsolt, darvay@cs.ubbcluj.ro
Obiective
La terminarea cursului, studentii trebuie sa posede:
a) cunoasca si înteleaga sabloanele de proiectare de baza
b) fie capabili sa identifice posibilele sabloane într-o problema reala
c) foloseasca sabloane de proiectare adecvate în rezolvarea unor probleme reale
d) posede abilitatile necesare pentru a realiza proiecte reutilizabile
Continut
1. Generalitati despre sabloanele de proiectare
1.1. Istoric
1.2. Conceptul de sablon de proiectare
1.3. Clasificari ale sabloanelor
2. Sabloane creationale
2.1. Abstract Factory
2.2. Builder
2.3. Factory Method
2.4. Prototype
2.5. Singleton
3. Sabloane structurale
3.1. Adapter
3.2. Bridge
3.3. Composite
3.4. Decorator
3.5. Facade
3.6. Flyweight
3.7. Proxy
4. Sabloane comportamentale
4.1. Chain of Responsibilities
4.2. Command
4.3. Interpreter
4.4. Iterator
4.5. Mediator
4.6. Memento
4.7. Observer
4.8. State
4.9. Strategy
4.10. Template Method
4.11. Visitor

Prezentarea fiecarui sablon de proiectare respecta etapele: scop, problema rezolvata, descrierea structurii (inclusiv diagrama UML), exemple (un exemplu structural si cel putin un exemplu real).
Activitati de laborator
Implementari de sabloane si folosirea acestora în rezolvarea unor probleme concrete. Fiecare solutie se va implementa în cel putin doua limbaje (Java, C#, Visual Basic 6.0, Visual Basic .NET).
Materialele de curs si de laborator vor fi disponibile pe serverul Departamentului de Informatica, în directorul ..\labor\romana\an4\depa
Bibliografie
[1] Bruce Eckel: Thinking in Patterns with Java, www.bruceeckel.com
[2] James W. Cooper: The Design Patterns Java Companion, Addison-Wesley, 1998.
[3] Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns - Elements of
Reusable Object-Oriented Software, Addison-Wesley, 1995
[4] Stephen Stelting, Olav Maassen, Applied Java Patterns, Prentice Hall, 2001.
Evaluare
Nota finala va reflecta activitatea de laborator si rezultatul de la colocviu (medie aritmetica).