#book
[[🗃️パッケージ原則]]についてまとめてある章。
## [[🗃️再利用・リリース等価の原則(REP)]]
## [[🗃️全再利用の原則(CRP)]]
- コード変更は、全て利用する or 全て利用しない
- [[🗃️凝集度]]を示す
## [[🗃️閉鎖性共通の原則(CCP)]]
- 変更が必要なときは、パッケージだけを交換する形にしておく。
- [[🗃️結合度]]を示す
- [[🗃️全再利用の原則(CRP)]]と、[[🗃️閉鎖性共通の原則(CCP)]]は、「分けるべき」と「まとめるべき」の両側から、責務とパッケージがちょうど1:1になるのが良い
## [[🗃️非循環依存関係の原則(ADP)]]
- これが守れていないということは、イコール[[🗃️全再利用の原則(CRP)]]と[[🗃️閉鎖性共通の原則(CCP)]]を守れていない状態でもある
## [[🗃️安定依存の原則(SDP)]]
- 安定したものに依存しなさいというもの
- [[🗃️安定度]]
- コードの変更が頻繁に起きないもの
## [[🗃️安定度・抽象度等価の原則(SAP)]]
- 安定度の高さと、抽象度の高さは相関関係にある
- 抽象とは
- 抽象クラスや、interface
- 詳細を持たないものに依存するロジック
- 固有の業務や特定技術に関係しない汎用概念とその操作(ビジネスロジック)