wildcatsの日記

赤羽在住でIT関係の会社の社長やってます。

ソフトウェア原則[3] - SRP(Single Responsibility Principle)

ぐぐってて見つけた。


さて、Robert C. Martinは、この原則をさらに現代的に言い換えています。



クラスに変更が起こる理由は、一つであるべき。
A class should have only one reason to change.


「変更」に焦点を当てた定義は、より具体的です。もし、変更の理由が2つあ る場合、そのクラスは2つに分割すべきだし、もし1つの変更が2つのクラス にまたがるなら、そのクラスは1つに統合すべきだと言っています。
この原則により、ある変更が起きたとき、その変更の連鎖を最小限に食い止め ることができます。この定義によって「アーキテクチャの連続性」と同じく、 変更に対して強い設計、という具体的なクラスの責務分割の指針が示されます。
mixiの日記にも書いたけど
ここでの「変更」をどの範囲までとするかはどの範囲までを含んでいるのか
少し考え中です。