design pattern

Template Methodパターン

Head First デザインパターンのメモ。 Template Methodパターン メソッドにおけるアルゴリズムの骨組みを定義し、いくつかの手順をサブクラスに先送りします。 Template Methodは、アルゴリズムの構造を変えることなく、 アルゴリズムのある手順をサブクラス…

Facadeパターン

Head First デザインパターンのメモ。 Facadeパターン サブシステムの一連のインターフェースに対する、統合されたインターフェースを提供します。 ファサードは、サブシステムをより使いやすくする高水準インターフェースを定義します。 Facedeパターン実装…

Adapterパターン

Head First デザインパターンのメモ。 Adapterパターン クラスのインターフェースをクライアントが期待する別のインターフェースに変換します。 アダプタは互換性のないインターフェースのためにそのままでは連携できないクラスを連携させます。 2つの形式 …

Singletonパターン

Head First デザインパターンのメモ。 Singletonパターン 一つのクラスがただ一つのインスタンスを持つことを保証し、 インスタンスにアクセスするグローバルポイントを提供する。 注意点 マルチスレッドアプリケーションに対してはパフォーマンスとリソース…

Abstract Factoryパターン

Head First デザインパターンのメモ。 Abstract Factoryパターン 具象クラスを指定することなく、一連の関連オブジェクトや 依存オブジェクトを作成するためのインターフェースを提供する。 Abstract FactoryとFactory Method 多くの場合Abstract Factoryの…

Factory Methodパターン

Head First デザインパターンのメモ。 Factory Methodパターン オブジェクト作成のためのインターフェースを定義するが、 どのクラスをインスタンス化するかについてはサブクラスに決定させる。 Factory Methodにより、クラスはサブクラスにインスタンス化を…

Decoratorパターン

Head First デザインパターンのメモ。 Decoratorパターン オブジェクトに付加的な責務を動的に付与する。 デコレータはサブクラスの代替となる柔軟な機能拡張手段を提供する。 特徴 装飾するオブジェクトと同じスーパークラスを持つ 複数のDecoratorクラスを…

Observerパターン

Head First デザインパターンのメモ。 Observerパターン オブジェクト間の1対多の依存関係を定義し、あるオブジェクトの状態が変化すると、 それに依存しているすべてのオブジェクトが自動的に通知され更新されるようにする。 新聞の定期購読 発行者(Subject…

Strategyパターン

Head First デザインパターンのメモ。 Strategyパターン 一連のアルゴリズムを定義してそれぞれをカプセル化し、それらを交換可能にする。 Strategyパターンによって、アルゴリズムを使用するクライアントとは独立して、アルゴリズムを変更できる。 設計時の…

Head First デザインパターンを読む

これはわかりやすい。 対象読者はJavaの知識がある人のようですが 他の言語のオブジェクト指向をかじったことがある人なら十分理解できると思う。 デザインパターン入門 誰かが、すでにあなたの問題を解決してしまっています。 パターンを頭の中にロードし、…