Practical Design Patterns in C++

"I would definitely recommend to any recent college graduate (like myself) to take it.  Most of the topics are not taught at school."

- New Hire

Description

This course provides a strong introduction to the concept and use of design patterns in the C++ context.  While we do introduce the student to 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 Software Development.  Here's a press release-like description.

Audience

This course is designed to serve the needs of professional software engineers with C++ background equivalent to Introduction to Object Oriented Programming in C++ and 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.
Course notes.

Outline

Semantics Consulting Home