デザインパターンとはソフトウェアの設計手法の再利用を目的に、ソフトウェア開発における典型的な設計パターンをまとめたものです。ここでは、そのパターンについて解説します。
| No. | カテゴリ | パターン | 目的 |
|---|---|---|---|
| 1 | デザインパターンに慣れる | Iterator | 1つ1つ数え上げる |
| 2 | Adapter | 一皮かぶせて再利用 | |
| 3 | サブクラスに任せる | Template Method | 具体的な処理をサブクラスに任せる |
| 4 | Factory Method | インスタンス作成をサブクラスに任せる | |
| 5 | インスタンスを作る | Singleton | たった1つのインスタンス |
| 6 | Prototype | コピーしてインスタンスを作る | |
| 7 | Builder | 複雑なインスタンスを組み立てる | |
| 8 | Abstract Factory | 関連する部品を組み合わせて製品を作る | |
| 9 | 分けて考える | Bridge | 機能の階層と実装の階層を分ける |
| 10 | Strategy | アルゴリズムをごっそり入れ替える | |
| 11 | 同一視 | Composite | 容器と中身の同一視 |
| 12 | Decorator | 飾り枠と中身の同一視 | |
| 13 | 構造を渡り歩く | Visitor | 構造を渡り歩きながら仕事をする |
| 14 | Chain of Responsibility | 責任のたらい回し | |
| 15 | シンプルにする | Facade | シンプルな窓口 |
| 16 | Mediator | 相手は相談役1人だけ | |
| 17 | 状態を管理する | Observer | 状態の変化を通知する |
| 18 | Memento | 状態を保存する | |
| 19 | State | 状態をクラスとして表現する | |
| 20 | 無駄をなくす | Flyweight | 同じものを共有して無駄をなくす |
| 21 | Proxy | 必要になってから作る | |
| 22 | クラスで表現する | Command | 命令をクラスにする |
| 23 | Interpreter | 文法規則をクラスで表現する |