デザパタ

引用元は

オブジェクト指向でなぜつくるのか―知っておきたいプログラミング、UML、設計の基礎知識―

オブジェクト指向でなぜつくるのか―知っておきたいプログラミング、UML、設計の基礎知識―

category pattern purpose
デザインパターンに慣れる Iterator 一つ一つ数え上げる
Adapter 一皮かぶせて再利用
サブクラスに任せる Template Method 具体的な処理をサブクラスに任せる
Factory Method インスタンス作成をサブクラスに任せる
インスタンスを作る Singleton たった一つのインスタンス
Prototype コピーしてインスタンスを作る
Builder 複雑なインスタンスを組み立てる
Abstract Factory 関連する部品を組み合わせて製品を作る
分けて考える Bridge 機能の階層と実装の階層を分ける
Strategy アルゴリズムをごっそり入れ替える
同一視 Composite 容器と中身の同一視
Decorator 飾り枠と中身の同一視
構造を渡り歩く Visitor 構造を渡り歩きながら仕事をする
Chain of Reponsibility 責任のたらいまわし
シンプルにする Facade シンプルな窓口
Mediator 相手は相談役一人だけ
状態を管理する Observer 状態の変化を通知する
Memento 状態を保存する
State 状態をクラスとして表現する
無駄をなくす Flyweight 同じものを共有して無駄をなくす
Proxy 影武者を前面に立てる
クラスで表現する Command 命令をクラスにする
Interpreter 文法規則をクラスで表現する


半分くらいしか覚えてない。