2012-05-01から1ヶ月間の記事一覧
今回はInterpreterパターンについての復習です。 Interpreterパターンは構文解析に特化したデザインパターンです。 それ以外で用いることはほとんどないでしょう。 BNFのスクリプトなどに対する構文解析器を用意するときなどには、非常に有効なパターンと思…
今回はCommandパターンの復習です。 Comandパターンは、命令をクラスとすることで、プログラムの保守性を高めています。 命令をひとつのクラスにすることで、命令の動的な運用を可能にしています。 命令を表すクラスに共通の親クラスを持たせることで、命令…
今回はProxyパターンの復習です。 Proxyパターンは、インスタンスを必要になってから生成するというパターンです。多くのインスタンスの中から一つだけ選び出すといったような画面を作成する際に、インスタンス全てを完全な形で用意するのは無駄が多いです。…
今回はFlyweightパターンの復習です。 Flyweightパターンは、一度生成したオブジェクトを使いまわすことによってメモリの使用量などを抑えるデザインパターンです。 オブジェクトの種類が少なく、同じオブジェクトが繰り返し何度も使われるような場合におい…
今回はStateパターンの復習です。 Stateパターンは状態をクラスとして表現することで、コードの簡略化を行なっています。 どういうことかというと、状態分岐をコードに書くとif文やswitch文を書く必要があり、冗長になってしまいます。 しかも状態をひとつ追…
今回はMementoパターンの復習です。Mementoパターン 状態の保存を行うパターンです。 状態に必要な情報をインスタンスとして保存します。 また、そのインスタンスから元の状態に復帰する機能もつけます。 アンドゥ機能などを実装する際に役に立つパターンで…