| Procedural Programming |
Ch 1 up to classes |
references, increments, static vars |
| Object-Based Programming |
Ch1 from classes, Ch 6, Ch 7 |
copy-and-swap idiom |
| Introduction to Templates
| Templates in Ch 11 |
swap, list
|
| Standard Template Library: Containers
| Ch 11, Ch 12 |
container examples
|
| STL: Algorithms
| |
algorithm examples |
| STL: Extending |
|
exending algorithms, writing containers |
| Singleton Design Pattern |
Ch 7 and 29, P3* |
classic and meyer's singleton |
| Inheritance,
Polymorphism, Abstract Classes, Template Method Pattern |
Ch 8, P5 |
inheritance, templated figures,
templated games |
| Abstract Factory Design Pattern |
Ch 29, P3
| GUI, pizza factory, car factory
|
| Delegation, Bridge Design Pattern |
P4 |
figures, appliances
|
| Access Methods and Inheritance,
Multiple Inheritance, Adapter Design Pattern |
P4 |
figures using object and class adapter |
| Covariance, Prototype Design Pattern |
P3 |
prototyped figures
|
| State Design Pattern |
P5 |
the state of Zork |
| Decorator Design Pattern |
ch 29, P4 |
decorating a web-page |
| Observer Design Pattern,
Push and Pull communication methods |
ch 29, P5 |
observing messages and name change |
| Chain of Responsibility
Design Pattern |
ch 29, P4 |
handling events in figures |
| Strategy Design Pattern |
P5 |
elementary, sorting |
| Command Design Pattern |
P5 |
history |
| Memento Design Pattern,
PIMPL idiom, nested classes |
P5 |
snapshot,
pimpl |
| Visitor Design Pattern, double dispatch |
P5 |
inspecting car parts |
| Smart Pointers |
22 (3d edition) |
unique_ptr, shared_ptr, PIMPL with smart pointers |
| Composite |
P4 |
calculator, genealogical tree |
| Implementing Design
Patterns Using Templates |
|
singleton, factory |
| Metaprogramming |
ch 20 |
branching, factorial,
loop unrolling
|