Type of course: |
Compulsory |
Language of instruction: |
Romanian |
Erasmus Language of instruction: |
English |
Name of lecturer: |
Corina Rotar |
Seminar tutor: |
Corina Rotar |
Form of education |
Full-time |
Form of instruction: |
Lecture |
Number of teaching hours per semester: |
48 |
Number of teaching hours per week: |
4 |
Semester: |
Summer |
Form of receiving a credit for a course: |
Grade |
Number of ECTS credits allocated |
8 |
Course aims:
application of standard design patterns
using the design patterns in the process of building the software
understanding the importance of using design patterns in software design (pros/cons)
Course Entry Requirements:
Object Oriented Programming
Course contents:
Object oriented programming fundamentals
Template functions, Template Classes
Generic Programming. Iterators and Algorithms
Object oriented design. UML Language. UML: Class Diagram, Sequence Diagram, Collaboration Diagram, State Diagram, Activity Diagram
Introduction too Design Patterns: Creational Design Patterns, Structural Design Patterns, Behavioural Design Patterns
Creational Design Patterns> Singleton, Factory, Factory Method, Abstract Factory, Builder, Prototype, Object Pool
Behavioural Design Patterns> Iterator, Memento, Observer, Strategy, Template Method, ,Visitor.
Structural Design Pattern. Adapter, Bridge, Composite, Decorator, Flyweight, Proxy.
Advanced Design Pattern. Examples.
Teaching methods:
lecture, disscutions, lab projects
Learning outcomes:
- studying the advanced chapters of the object-oriented paradigm- design patterns
- consolidating the skills of analysis and design of software systems through object-oriented analysis and design
- the ability to operate with the generic programming paradigm
- studying some basic elements of the UML modeling language
- the ability of using design patterns
Learning outcomes verification and assessment criteria:
Implementation of software units in high-level programming languages by using of design patterns - 50% final exam + 50% project
Recommended reading:
Gamma, E., Helm, R., Johnson, R., Vlissides, J.,,
Design Patterns - Elements of Reusable Object-Oriented Software, Teora
, Bucuresti
, 2000
, 500
Bruce Eckel,
Thinking in C++, Teora
, Bucuresti
, 2010
, 300
H. Schildt,
C++ - manual complet, Teora
, Bucuresti
, 2000
, 400