タグ

デザインパターンに関するrintetraのブックマーク (4)

  • 矢沢久雄の早わかりGoFデザインパターン(1) | 日経 xTECH(クロステック)

    今回は、パターンを1つだけ紹介します。「Mediatorパターン」です。GoFでは、それぞれのパターンの「目的]「背景」「効果」などが明示されています。私も、ちょっと真似をしてみましょう。複数のオブジェクトを組み合わせてプログラムの機能を実現するという目的において、オブジェクト間の関連がゴチャゴチャになってしまうという背景(問題)があり、Mediatorパターンの採用によって関連をキレイに整理できるという効果があります。説明だけでは、何のことだかわからないと思いますので、具体例をお見せしましょう。 図1[拡大表示](1)をご覧ください。これは、UML(Unified Modeling Language、ユーエムエル)と呼ばれる表記法で記述されたプログラムの設計図です。UMLでは、四角形の中に下線付きで名前を書いてオブジェクトを表し、関連のあるオブジェクトを矢印で結んで示します。ここで関連

    矢沢久雄の早わかりGoFデザインパターン(1) | 日経 xTECH(クロステック)
  • サルでもわかる 逆引きデザインパターン 第2章 逆引きカタログ ロジック編 Strategy(ストラテジ)

    イントロダクション 入出力は同じだけど条件によってアルゴリズムの交換を行いたい場合や、将来的にアルゴリズムが変更される可能性がある処理に遭遇する場面があります。 また、switch文などの条件分岐にアルゴリズムを埋め込むような処理を行うと、変更が発生した場合に他のアルゴリズムへ影響が生じたりコードが冗長になったりし、保守性がよくありません。 ストラテジパターンは、アルゴリズムをクラス化することにより、アルゴリズムの切り替えを使用するクラスとは無関係に簡単に行えるようにするパターンです。 なお、ストラテジは「戦略」という意味です。条件によってアルゴリズムを切り替えるところは、まるで戦略を練っているようですね。 パターン解説 データ処理を例にストラテジパターンを説明します。 図6の左側のように、入力したデータ処理が条件により振り分けられ、最終的に同じ型のデータを出力する処理が存在します。 この

    rintetra
    rintetra 2011/05/26
    ストラテジデザインパターン
  • VB.NETとC#でデザインパターン

    このページでは、 Java言語で学ぶデザインパターン入門 結城 浩(著) (ソフトバンクパブリッシング ISBN:4797316462)に掲載されているサンプルソースを個人的にVB.NET/C#に移植したものを、 結城氏の了解を得て公開しています。

  • サルでもわかる 逆引きデザインパターン 第1章 はじめてのデザインパターン はじめに:

    第1章 はじめてのデザインパターン はじめに デザインパターンとは 特集の構成 すぐわかるオブジェクト指向 すぐわかるUML おわりに 第2章 逆引きカタログ ロジック編 Singleton (シングルトン) Factory/Factory Method (ファクトリ/ファクトリメソッド) Strategy (ストラテジ) Composite (コンポジット) Visiter (ビジタ) 第3章 逆引きカタログ J2EE編 Template Method (テンプレートメソッド) Facade (ファサード) ViewHelper (ビューヘルパ) DAO (Data Access Object) 第4章 逆引きカタログ その他 ユーティリティクラス 実行時例外を標準的に使う Nullオブジェクト 第5章 デザインパターン適用の勘所 はじめに アプリケーションの仕様 リファクタリング前のサ

  • 1