タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

designpatternに関するkijitoranekoのブックマーク (6)

  • - デザインパターンによる進化的設計

    このプログラムでは全体の処理の流れが決まっています. その中で,youGotMailPopup()の部分のみの動作が変更できることが望まれています. ここで利用できるパターンを考えてみます.振舞に分類されるパターンのなか で,TemplateMethod と呼ばれるパターンがあります.GoFを参照すると, TemplateMethod 目的: 1つのオペレーションにアルゴリズムのスケルトンを定義しておき,そ の中のいくつかのステップについてはサブクラスでの定義に任せることにする. TemplateMethodパターンでは,アルゴリズムの構造を変えずに,アルゴリズ ムの中のあるステップをサブクラスで再定義する. とあります.今回の例では,全体の処理の流れを規定するrun()メソッドが上 記の「スケルトン」に当たります.また,youGotMailPopup()が「いくつかの ステップ」に当ては

  • DAOパターンのデメリットを補う「DataAccessMethodパターン」

    DAOパターンは、企業向けシステム開発で利用される非常に優れたデザインパターンですが、多くのクラスやインターフェイスを定義する必要があるというデメリットがあります。そこで稿では、GoFのTemplateMethodパターンをベースしたDataAccessMethodパターンを紹介します。これを用いると、通常のDAOパターンに比べてクラス数が激減します。 はじめに CJ2EEのDataAccessObjectパターンは、企業向けシステム開発で利用される非常に優れたデザインパターンです。これを利用することにより、柔軟なシステムを構築することが可能となります。有名なパターンなので、多くの方はこのパターンを使った設計/開発に携わった経験があるのではないかと思います。 しかし、DataAccessObjectパターンを使った開発は多くのクラスやインターフェイスを定義する必要があります。これは、Da

    DAOパターンのデメリットを補う「DataAccessMethodパターン」
  • http://japan.internet.com/column/developer/20080909/26.html

  • デザインパターンの使い方: Flyweight

    Flyweightパターン GoFのデザインパターンでは、ソフトウェア開発でよくある問題についての23パターンの解決策が名前付きで紹介されています。著者の場合も、長年の間にこれらのパターンに何度となくお世話になりました。CommandやTemplate Methodなどのパターンは、今でも高く評価しています。 もっとも、なかにはごく限られた場面でしか使えそうにないパターンもいくつかあります。その一例がFlyweightです。しかし、FlyweightはJava自体が大きく依存しているデザインパターンなのです。 Wikipediaによれば、Flyweightパターンは、「多数のオブジェクトを操作する必要があり、これらのオブジェクトに余計なデータを持たせる余裕がない」場合に適しています。Javaでは、StringオブジェクトがFlyweightパターンで管理されています。Javaの固定Str

    デザインパターンの使い方: Flyweight
  • http://japan.internet.com/column/developer/20080905/26.html

  • デザインパターンの使い方: Template Method:CodeZine

    Template Methodパターンの例 デザインパターンは強力なツールです。強力なツールには常に誤用の可能性があります。注意を怠ると、ぐちゃぐちゃで何だかよくわからないものを作ってしまったりする危険性があります。 Template Methodは、2つ以上の関連するクラスの間での重複をなくすための、1つの解決策を提供するデザインパターンです。これはGammaらによる『Design Patterns』(1995年)で取り上げられていた23個のパターンのうちの1つです。 Template Methodパターンはリファクタリングの目標と考えるのがよいでしょう。稿では、この目標に向けてコードを手直しする方法を、具体的な例を見ながら説明していきます。「Template Methodパターンとは何ぞや」ではなく、実際にリファクタリングを行い、その結果について語ることにします。 今回のサンプルでは

  • 1