Design Patterns Training Course
Introductions
Patterns and tiered architectures
Pattern description
Design patterns and design
Finding and selecting design patterns
Design pattern implementation
Well-known patterns
Object Creation
Factory
Builder
Factory Method
Prototype
Singleton
Structural Patterns
Adapter
Bridge
Composite
Decorator
Façade
Flyweight
Proxy
Behavioural Patterns
Chain of Responsibility
Command
Interpreter
Iterator
Mediator
Memento
Observer
State
Strategy
Template Method
Visitor
Observer
Creating Patterns
To pattern or not to pattern
Formal pattern description
Organizing the pattern catalogue
Particular goal and abstracted goal
Publishing your patterns to a pattern community
Good knowledge of UML and any fully object-oriented language like C++, C#, Java, VB.NET, etc...
There are plenty of "tried and tested" patterns widely available to everyone. Sometimes it is a matter of changing the names and implementing the pattern in a specific technology. It can saves hundreds of hours, which otherwise would be spent on design and testing.
Training Goals
This course has two goals: first, it allows you to reuse widely-known patterns, second, it allows you to create and reuse patterns specific to your organization.
It helps you to estimate how patterns can reduce costs, systematize the design process and generate a code framework based on your patterns.
Audience
Software designers, business analysts, project managers, programmers and developers as well as operational managers and software division managers.
Course Style
The course focuses on use cases and their relationship with a specific pattern. Most of the examples are explained in UML and in simple Java examples (the language can change if the course is booked as a closed course). It guides you through the sources of the patterns as well as showing you how to catalogue and describe patterns which can be reused across your organization.