パッケージ凝集原則

明日、講義です。
無理だ・・・

とりあえず凝集原則だけメモ。

REP・CRP・CCPの3つ

とりあえずまとめのみ。意見はまた今度。

  • REP:再利用・リリース等価の原則

再利用の単位とリリースの単位は等しい。

再利用・リリースの単位:パッケージ

パッケージは、その利用者の立場で作成する。

パッケージ内の全てのクラスは、同じ対象者によって利用される。

パッケージ内のクラスは、全て再利用可能か、全て再利用できないものである。混在してはならない。

  • CRP:全再利用の原則

パッケージ内に含まれるクラス達は、全て一緒に再利用される。

組で使われるクラスは、同一パッケージに属する。

1つのパッケージ内のクラス達は互いに分離できない。

パッケージの利用者は、それから提供される全てのクラスに依存する。

  • CCP:閉鎖性共通の原則

パッケージ内のクラス達は、同じ種類の変更に対して閉じている。
この変更は、パッケージ内のクラス全てに影響を及ぼすが、他のパッケージには影響しない。

パッケージを変更する理由は複数あってはならない。

同じ理由で変更されるクラス達は1つのパッケージに属する。



これらは、モジュールの凝集度の考えを発展させたもの。



結合のほうは明日でいいや。


参考:アジャイルソフトウェア開発の奥義