責務
責務(responsibility)
オブジェクト指向設計等で扱われる
責務が明確であると
凝集度が高くなりがち?
疎結合になる?
テスタブルなコードになりやすい
責務が不明確であると
凝集度が低くなりがち?
密結合になる?
クラス設計の文脈の場合
各クラスは何をすべきか、何が在ってほしいかを考えていくと責務というものが生まれてくる?
プログラムを書いていると共通のデカい定数クラスが既存ソースに存在する、または書こうとする場合がある
デカい定数クラスなんか作らず、もっと適切な場所に配置すべき、探すべき
MVCパターンを例に考えると
Model: 責務はデータの管理、ビジネスロジックの処理
View: 責務はModelからデータを受け取って表示に関わる処理をする
Controller: 責務はModelとViewの仲介、適切なViewの選択
関連
委譲
継承
SOLID原則
単一責任の原則
オープン・クローズドの原則
GRASP
is-a関係
part-of関係
モジュール強度
モジュール結合度
デザインパターン
データ指向設計
DRY原則
メモ
【本には書いてないオブジェクト指向③】責務はクラスではない | そるでぶろぐ
凝集度と責務 | PPT
現場で役立つシステム設計の原則 〜変更を楽で安全にするオブジェクト指向の実践技法:書籍案内|技術評論社
#コーディング #設計