Design Patterns in C++
Course Number: 639-TES
Recommended Duration: 5 days
Course Overview
The course covers the 23 design patterns in the book "Design Patterns" (by Gamma, Helm, Johnson, and Vlissides), and 3 others added by the instructor.
Objectives
You will learn to write programs that are extensible, flexible, maintainable, modular, portable, reusable, and understandable.
Prerequisites
Complete an introductory course in C++ and have one year experience programming in C++. Also, you must be able to do the following in C++:
- define a class
- declare/define/invoke a constructor, a copy constructor, a destructor, operator=0, a member function, a const member function, a static member function, a virtual member function, and a pure virtual member function.
- define a class to be publicly derived from another class
- write a member initialization list
- define/use a class template
- declare/define/invoke a function template and a member function template
Topics
- Introduction
- Object-Oriented Guidelines
- What type are you?
- Clone
- Disable Copy/Assignment
- Memento
- Template Method
- Chain of Responsibility
- Prototype
- Factory Method and Factory Class
- Abstract Factory (Class)
- Flyweight
- Singleton
- Mediator
- Proxy
- Facade
- Adapter
- Iterator
- All of Me
- Observer
- Strategy
- State
- Bridge
- Decorator
- Composite
- Builder
- Interpreter
- Visitor
- Null Object
- Command
- Conclusion
|