-
Notifications
You must be signed in to change notification settings - Fork 0
DNET_ComponentPrinciples
nishi_74322014 edited this page Sep 11, 2026
·
1 revision
コンポーネントないしはパッケージの原則などという。
(REP:Reuse-Release Equivalency Principle)
コンポーネントないしはパッケージは、
- 全て再利用できるもの(ライブラリ)
- 全て再利用できないもの(上モノ)
の何れか分類で纏める。
(CRP:Common Reuse Principle)
コンポーネントないしはパッケージは、
依存関係の強いクラス
を纏める。
(CCP:Common Closure Principle)
コンポーネントないしはパッケージは、
リリース・サイクルが等しいクラス
を分類して纏める(BCLとかFCLとかNuGetとか)。
(ADP:Acyclic Dependencies Principle)
コンポーネントないしはパッケージは、
循環参照があってはならない。
(.NET ではビルドエラーになる)。
(SDP:Stable Dependencies Principle)
コンポーネントないしはパッケージの、
下位スタック程、安定したものになるよう、
構成を組む(BCL ← FCL ← NuGet)。
※ 閉鎖性共通の原則と似ている。
(SAP:Stable Abstractions Principle)
コンポーネントないしはパッケージは、
- 安定なクラスは抽象的に
- 不安定なクラスは具体的に
を分類&実装する(...自然とそうなる気もするが)。
- オブジェクト指向設計の原則 - パッケージ設計の原則 - brfrn169の日記
http://brfrn169.hatenablog.com/entry/20100925/1285413511
- コンポーネントの凝集性の原則についてまとめてみた
https://qiita.com/Suzuki_Cecil/items/86ca9e2819a6f4af8533 - コンポーネントに関する6つの原則
https://qiita.com/NagaokaKenichi/items/65c149ba92580fce5be2
正誤
- 「(SAP:Stable Absstractions Principle)」→「Stable Abstractions Principle」。
- 「(netではビルドエラーになる)」→「(.NET ではビルドエラーになる)」。
移行メモ
- PukiWiki のページ内アンカ(
#xxxxxxxx)は GitHub Wiki では再現できないため、 同一ページ内のアンカは見出しから生成されるアンカに張り替えた。
Tags: 移行, コンポーネントの原則, パッケージ設計, REP, CRP, CCP, ADP, SDP, SAP, 凝集度, 結合度
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。