Design Patterns for OO Programming      

Code:

IS500-020

Series:

Computer Professional

Duration:

3 days

Patterns
What are Patterns?

Pattern Purposes
The GOF patterns
Pattern classifications
The Use of UML

Relationships between patterns

When to use patterns & when not to


Creational Patterns
Abstract Factory

Builder
Factory Method
Prototype
Singleton

Structural Patterns
Adapter
Bridge
Composite
Decorator
Facade
Flyweight
Proxy
Null Object

Behavioral Patterns

Chain of Responsibility

Command
Interpreter
Iterator
Mediator
Memento
Observer
State
Strategy
Template Method
Visitor

Architectural Patterns
Layers

Blackboard
Reactor

Model-View-Controller

Patterns in Frameworks

Java

.NET

Patterns: General Issues

Reading a pattern
Intent, applicability, forces of patterns
Solutions & Consequences
Implementation issues - language specific
Anti-patterns
Re-factoring of patterns

Automating patterns - tools
The future of patterns

Design Patterns for OO Programming


After completing this course, students will know how to:

  • Describe the history of patterns development.
  • Appreciate the benefits of a patterns approach to programming design.
  • Describe the detailed design, purpose and behaviour of 20 of the original GOF design patterns.
  • Communicate with other developers using the language of patterns.
  • Use design patterns to improve the design of new and existing software.
  • Implement various patterns in various programming languages.
  • Combine different patterns so that they work together in a software design.
  • Understand some of the design patterns contained in such frameworks as.NET and Java.
  • Choose from a variety of UML tools which automate the application of patterns.

    .


Prerequisites:


Understanding of object oriented programming techniques, experience with an object-oriented programming language such as Java, C#, or C++, some exposure to UML diagramming models.