デザインパターンとは
- その名の通りで設計パターン
- 機能拡張や再利用がしやすいソフトウェアを作るための先人が工夫したノウハウ集
生成に関数パターン
デザインパターン | 概要 |
---|---|
Abstract Factory | 関連する部品を組み合わせて製品を作る |
Builder | 複雑なインスタンスを組み立てる |
Factory Method | インスタンス作成をサブクラスにまかせる |
Prototype | コピーしてインスタンスを作る |
Singleton | たった1つのインスタンス |
構造に関するパターン
デザインパターン | 概要 |
---|---|
Adapter | 一皮かぶせて再利用 |
Bridge | 機能の階層と実装の階層を分ける |
Composite | 容器と中身の同一視 |
Decorator | 飾り枠と中身の同一視 |
Facade | シンプルな窓口 |
Flyweight | 同じものを共有して無駄をなくす |
Proxy | 必要になってから作る |
振る舞いに関するパターン
デザインパターン | 概要 |
---|---|
Chain of Responsibility | 責任のたらい回し |
Command | 命令をクラスにする |
Interpreter | 文法規則をクラスで表現する |
Iterator | 1つ1つ数え上げる |
Mediator | 相手は相談役1人だけ |
Memento | 状態を保存する |
Observer | 状態の変化を通知する |
State | 状態をクラスとして表現する |
Strategy | アルゴリズムをごっそり切り替える |
Template Method | 具体的な処理をサブクラスに任せる |
Visitor | 構造を渡り歩きながら仕事する |