2012-03-01から1ヶ月間の記事一覧
Composite今回はCompositeパターンの復習です。 Compositeパターンはあるオブジェクトとそれらを格納するオブジェクトを同一視したパターンです。 オブジェクトを格納するクラスと、格納されるオブジェクトを表現したクラスは共に同一のスーパークラスを持ち…
今回はStrategyパターンの復習です。 Strategyパターンは、アルゴリズムの切り替えを容易に行うためのパターンです。 何らかの動作をするときのアルゴリズムをクラスにして、分離させることで切り替えを容易にしています。 アルゴリズムという考え方そのもの…
今回はBridgeパターンの復習です。 Bridgeパターンは機能と実装の分離を目的としたパターンです。 実装と機能を分けることで、実装によらない機能追加、機能によらない実装の追加などが可能となります。 実装と機能が同じクラスに入っているよりも、両者を組…
今回はAbstractFacory、抽象工場の復習です。 抽象工場 このパターンは、BuilderパターンとFactoryMethodパターンの合成です。 特定の構造を持ったモノを生成するBuilderパターンに対して、 その生成過程を抽象化するFactoryMethodを適用することで複数の種…
今回はBuilderパターンの復習です。 Builderパターンは構造を持つインスタンスを段階的に組み上げて作成します。 まず、全体を部分に分割し、分割した要素を組み上げていくように作成します。 Builderパターンの要素 全体を作成するのに必要な全ての要素(部…
メモ 抽象クラスには抽象メソッドも具象メソッドも書ける。 インターフェースには具体的なメソッドは書けない。 抽象クラスを継承したクラスは全ての抽象メソッドを実装しなくてはいけない。
今回はPrototypeの復習です。 Prototypeパターン このではインスタンスの生成を、既存のインスタンスのコピーで行います。 これは、クラスとして表現するにはあまりにも複雑すぎるインスタンスの生成を行う際に威力を発揮します。 例えばペイントソフトなど…