Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Design Patternに関するdotsargのブックマーク (5)

  • 主婦と.NETと犬の記録

    わんくま同盟代表の中博俊です 2010/06/03 19:00に わんくま同盟の仲間である なおこ(・∀・) さんが永眠されました わんくま勉強会にも登壇して頂いたり その明るいキャラクターでわんくまを盛り上げて頂いて とても感謝しています 今週 ご家族とお会いしてお話させて頂いたときに お亡くなりになった旨を知人にも知らせて欲しいとのご依頼も頂けましたので 悲しいお知らせですが謹んでご通知申し上げます もし故人とご親交のあった方をご存じの場合は お亡くなりになったことを知らせて頂ければと思います 謹んでご冥福をお祈りします。 わんくま同盟代表 中博俊 「主婦と .NET と犬の記録」へようこそ。 VB プログラマーで主婦で犬飼いな私、なおこ(・∀・) がそれぞれの分野に挑戦した記録をつづっていこうと思っています。 Page Summary 更新履歴 ここに掲載しているソースコードについて

  • クラス設計に関するメモ

    経験的にこのようにした方がよいと思った点についての記録です。 仕事で大規模(2000クラス超)かつ製品寿命がながいパッケージソフトを作っていた関係で、 ちょっとした設計の間違いが、 あとあとで大変な苦労する羽目になったりすることを経験してきました。 このような規模が大きいアプリケーションを作ることはなかなかないかもしれませんが、 なにかの参考になれば、と思います。 継承する前に委譲を検討する Singleton パターンを使うときの注意 Template Method パターンを使うときの注意 クラス間の依存に関する注意 クラスの粒度 Singleton の問題を回避できるか? 継承する前に委譲を検討する 継承はスーパークラスの仕様をよく理解しておかないと、 バグを作りこみやすいので十分注意する必要があります。 メソッドのオーバーライドをするときも、 public void foo(){

  • StateパターンでCSVを読む

    こんなのを読み込んで適当な処理を施して欲しい、と。Excelのシートから各セルの値を拾い出すのはさほどに難しくはないのですが、いかんせん時間がなかったのでいったんはお断りしたところ、「Excelシートを直接読むのが面倒ならCSVからでもかまわん」とのこと。CSVならフツーにテキストファイルを読めばいいから小一時間で作れそう、昼メシ奢ってもらうのを報酬に引き受けることにしました。 CSVのフォーマット CSV(Comma Separated Values)はMS-DOSあるいはその以前からスプレッドシートのデータ・フォーマットとして使われています。CSVの規格/標準としてはRFC4180がありますが、こいつは2005年に作られたものでそれ以前のアプリケーションがRFC4180に準拠していることは期待できるはずもありません。とはいえ、まずはRFC4180に従って作られたCSVなら正しく読めるこ

    StateパターンでCSVを読む
  • Adapterパターンを使い利用コンポーネントを切り替える

    システムが大規模になるほど、あるいは優れた設計が施されたシステムほど、システムは高度にコンポーネント化される傾向にあります。例えばトランザクション管理、ロギング、コネクション・プーリングなど、機能単位でコンポーネント化されます。 さて、開発中のシステムの機能の一部を、あるコンポーネントを用いて実現していた際、性能上の理由などから、他のベンダより提供されている同じ機能をもったコンポーネントに切り替える必要が生じたとしましょう。しかし、提供元が異なるコンポーネントは、利用するためのAPI(一連のメソッド呼び出しなど)に互換性がないことがほとんどです。システムの構築は進行してしまっているので、コンポーネントを切り替えるにはコードを大幅に書き換える必要が生じます。このような問題に直面した場合の良い解決方法はないものでしょうか? デザインパターンは、こうした問題に直面したときに威力を発揮します。ここ

    Adapterパターンを使い利用コンポーネントを切り替える
  • サルでもわかる 逆引きデザインパターン 第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