Practical Design Patterns in C++

Effective, Real-World Use of Design Patterns for Design, Coding, and Documentation

Author/Presenter:  Steve Dewhurst

Description

This course provides a strong introduction to the use of design patterns in the C++ context.  While we do discuss the concepts and theory that underlie design patterns, most of the course is spent in a highly practical examination of specific design patterns as implemented in the C++ language.

Unique to the course are sections that show how to employ patterns in combination to solve sophisticated design problems, and advice as to how to select among available patterns in a specific context.  The course also covers many of the lesser known features of the C++ language and C++ programming techniques and idioms that are of practical importance when applying the patterns.

The course also covers related issues of class, hierarchy, and framework design in the context of patterns that motivate the issues.

The course includes design labs and optional programming exercises and solutions.

A portion of the course's material has been given as a one-day tutorial at the Software Development conference.  Here's a press release-like description.

Audience

This course is designed to serve the needs of professional software engineers with at least several months of production C++ experience.

Format

3 or 4 days, lecture/design labs, optional programming labs
This course may be customized to the individual client's application domain, project, staff experience level, and scheduling requirements.

Texts

Recommended text:  Gamma, et al., Design Patterns, Addison Wesley, 1995.
Copies of the course materials, with extensive explanatory notes.

Outline