| 名前 | 備考 |
| Iterator | 数え上げる |
| Adapter | 再利用 |
| Template Method | 流れの大枠だけ作り、処理の詳細は派生クラスで定義 |
| Factory Method | インスタンスの生成を派生クラスに任せる |
| Singleton | インスタンスをたった1つだけ生成されるようにする |
| Prototype | コピー(Clone())の実装 |
| Builder | 複雑なインスタンスの生成過程を隠蔽 |
| Abstract Factory | 関連する一連のオブジェクトを生成 |
| Bridge | 機能/拡張と実装を分離 |
| Strategy | アルゴリズムをカプセル化し、動的に切り替える |
| Composite | 容器と中身を同一視して再帰的に扱う |
| Decorator | 飾り枠と中身を同一視して柔軟に機能拡張 |
| Visitor | データ構造とそれに対する処理を分離する |
| Chain of Responsibility | 責任のたらい回し |
| Facade | 統一的な窓口の提供 |
| Mediator | 仲介者に処理を依頼 |
| Observer | 状態の変化を通知 |
| Memento | 状態を保存する |
| State | 状態を表すオブジェクト |
| Flyweight | 多数のオブジェクトの中で共通のものを共有 |
| Proxy | あるオブジェクトへのアクセスを制御 |
| Command | 命令単位をクラスで表現する |
| Interpreter | 文法規則をクラスで表現する |
| ※Factory | インスタンスの生成を任せる |