This is an old revision of the document!
Design Patterns
When and Where?
Date | Time | Room |
24, 25, 26, 27 June 2014 | 11:00-14:00 | TODO |
Registration
Instructor
Catalin Tudor
Prerequisites
Prerequisites for participants:
Basic/Medium knowledge of OOP (participants should know what the following notions refer to: class, class member, method, destructor, static method, virtual method, constructor, static constructor, object, inheritance, aggregation)
* Practical knowledge of writing an OOP program (the programming language is not important)
Agenda
A word about complex systems
Raw materials for software development
Introduction of UML diagrams
Examples of bad design
SOLID design principles
Single Responsibility Principle
Open Close Principle
Liskov Substitution Principle
Interface Segregation Principle
Dependency Inversion Principle
Overview of design patterns
Design Pattern catalogue (each pattern will be considered in the context of solving a real design issue)
Composite
Iterator
Strategy
State
Template Method
Decorator
Proxy
Factory Method
Visitor
Abstract Factory
Observer
Command
Adapter
Facade
Singleton
Bridge
Design Entropy
What is design entropy
How it affects the design
How to build an entropy friendly design