タグ

OOPとdesignに関するyassのブックマーク (3)

  • オブジェクト指向におけるデザインパターン

    HOME Last modified: 2014-01-17 ここでは Pree の著書の論旨に基づきつつ、他の文献からの引用をおりまぜて、 「デザインパターン」の意義と概略を整理してみたいと思います。 あくまでも私の解釈と経験に基づく理解なので、誤りや説明不足はご容赦ください。 オリジナルの文献を手に取るきっかけとなれば幸いです。 文献 特集「デザインパターンとオブジェクト指向設計」 月刊ドクター・ドブズ・ジャーナル日版, 1997年10月号. Design Patterns Elements of Reusable Object-Oriented Software, by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, Addison-Wesley Professional Computing Series,

    yass
    yass 2014/01/13
    " 乱暴にいえば、Pree の「メタパターン」は、仮想関数と継承を 使ってやれることを数学的に単純化したものであり、 Gamma らの「デザインパターン」は、それらの具体的な応用を示し たもの、という感じがします。"
  • Continuous Modeling - Fly me to the Luna

    みなさまご無沙汰しております。僕はここの所、残業はしないまでも毎日クタクタになるほど忙しい毎日を過ごしています。どんな仕事か一言でいうと、あるプロダクトのアーキテクチャを刷新するお仕事です。今までできなかったあれやこれやを実現するために、既存のアーキテクチャを改善したり、作りなおすお仕事です。今はまだ始まったばかりで、方針を決めるために、既存のアーキテクチャ上に機能拡張してみて問題点を調査したり、どう改善するのか方針案を考えたり、実際に改善案を少しずつやってみたりしています。 このプロジェクトは、それほど大所帯ではないですが、他の会社のエンジニアさんも加わるなど、結構スキルセットがバラバラです。そのため、久しぶりにペアプロで作業を回しています。1日じゅうペアプロすると、一日の終わりの頃には頭がクタクタです。久しぶりです、この感覚。楽しい。 さて、既存のアーキテクチャを見ていくと、10年以上

    Continuous Modeling - Fly me to the Luna
    yass
    yass 2013/09/08
    " オブジェクト指向設計は、いかにこういう責務が曖昧なクラスを減らし、明確な責務をクラス構造に落としこみ、コードに実装するか、という活動なんじゃないか / だから「チーム」で「定期的」に「モデリング」を行う"
  • GRASPパターン - Strategic Choice

    GRASPについてGeneral(汎用)Responsibility(責任)Assignment(割り当て)Software(ソフトウェア)Patterns(パターン)オブジェクト指向設計の基とは、適切なクラスに適切な責任を割り当てることであるここでいう責任とは、クラスが何らかの処理を実行する責任(実行責任)と、クラスが持つ情報を把握する責任(情報把握責任)のことである。そして、この責任割り当ての指針がGRASPである。責任駆動開発設計responsibility-driven design : RDD「責任」「役割」「強調」の観点から設計を行う。GRASPはRDD一部であり、その手段である。一覧責任を割り当てる際の指針 生成者情報エキスパートコントローラ保守性・拡張性・再利用性を高めるための指針 疎結合性高凝集性クラスを洗練する時に使用 多相性人工品間接化バリエーション防護壁参考実践U

  • 1