デザインパターン
ねらい モチベーション つかいどころ 登場人物 結果 実装にあたり考えるべきこと 【補強】用例 関連するパターン 英語 ねらい 複数クラスからなるサブシステムに窓口を設け、簡単に使えるようにする モチベーション システムをサブシステムに小分けにするこ…
ねらい AKA モチベーション つかいどころ 構造 登場人物 クライアントコードからの利用 功罪 功 罪 実装にあたり考えるべきこと Strategyパターンとの対比 関連するパターン 英語 ねらい オブジェクトに責務を動的に追加する AKA Wrapper AdapterもWrapperで…
ねらい モチベーション つかいどころ 登場人物 クライアントコードからの利用 結果 実装にあたり考えるべきこと 関連するパターン 英語 ねらい オブジェクトを木構造にし、木全体も部分木も葉も一様に扱えるようにする モチベーション 例えばお絵かきソフト …
ねらい 別名 モチベーション つかいどころ 構造 登場人物 クライアントコードからの利用 結果 実装にあたり考えるべきこと 関連するパターン 英語 ねらい 種類に関する継承ツリー(Abstraction)と実装に関する継承ツリー(Implementor)を分離する 種類に関する…
ねらい 別名 モチベーション つかいどころ 構造 登場人物 クライアントコードからの利用 功罪 継承方式と集約方式とのトレードオフ ほか、考えるべきこと 実装 他のStructural Patternとの対比 英語 ねらい 既存クラスのインタフェースを変える 別名 Wrapper…
生成のパターンの分類 継承 集約 比較検討 -- シンプルなオブジェクトを生成する場合 Factory Method AbstractFactory Prototype 選択 生成のパターンの分類 2つに大別 継承 Factory Method 集約 Abstract Factory Builder Prototype 比較検討 -- シンプルな…
まとめ モチベーション つかいどころ 功罪 実装面 用例 関連するパターン まとめ クラスから生成されるオブジェクトを1つに絞る モチベーション オブジェクトがただ1つであることが重要なケースがある 例 ファイルシステム ウィンドウ 「ただ一つのオブジェ…
まとめ モチベーション 登場人物 つかいどころ 功罪 実装 関連するパターン まとめ newとかするのではなく、作り置きしたオブジェクトをClone()する モチベーション AbstractFactoryやFactoryMethodを導入すると、 AbstractFactoryやCreatorのサブクラスを大…
まとめ オブジェクトを生成・返却するメソッドのインタフェースを定義する 実際にどのクラスを生成するかはサブクラスの実装|overrideに委ねる 別名 Virtual Constructor モチベーション 世の中のプログラムフレームワークは抽象クラスを扱う フレームワーク…
モチベーション 登場人物 全体像 クライアントコードからの利用 功罪 実装面で考えるべきこと Builderクラスの構築処理のインタフェース Productは汎化しない 基底のBuilderのメソッドは空の処理 用例 関連するパターン BuilderとAbstarctFactoryとのちがい …
まとめ 別名 登場人物 全体像 つかいどころ 功罪 実装面 Singleton ふつうの実装 Familyが多い場合・Family間の差分が少ない場合の実装 Productが増えても大変にならない実装 型安全 関連するパターン まとめ 一式のオブジェクト群を生成するクラス 関連があ…
Chapter 2 A CASE STUDY:DESIGNING A DOCUMENT EDITOR ドキュメントエディタ「Lexi」を題材に、 さまざまな設計上の困難と それを克服するために使用されているデザインパターン を紐解いていく Chapter 2 A CASE STUDY:DESIGNING A DOCUMENT EDITOR 2.2 Doc…