- Adapter パターン
- 元々関連性のない2つのクラスを接続するクラスを作る
- Bridge パターン
- クラスなどの実装と、呼出し側の間の橋渡しをするクラスを用意し、実装を隠蔽
- Composite パターン
- Decorator パターン
- あるインスタンスに対し、動的に付加機能を追加する。Filterとも呼ばれる。
- Facade パターン
- 複数のサブシステムの窓口となる共通のインタフェースを提供
- Flyweight パターン
- 多数のインスタンスを共有し、インスタンスの構築のための負荷を減らす
- Proxy パターン
- 共通のインタフェースをもつインスタンスを内包し、利用者からのアクセスを代理する。Wrapperとも呼ばれる。