REP我很难理解和之间的区别CRP。有没有人有一个最好的例子直观的解释?
到目前为止我发现了什么:
REP (Reuse-Release-Equivalence-Principle):复用的粒度就是发布的粒度。包中的类应该在内容方面相关,并服务于更高级别的主题。
CRP (Common-Reuse-Principle):组件不打算依赖于它们不需要的类。一起使用的类应归为一个组件。
我不明白的是为什么REP要告诉包容性原则(包裹变大)和CRP排他性原则(包裹变小)?此外,如果某些东西在内容(REP)方面属于一起,那么它不是也一起使用(CRP)吗?
REP如果我只根据和CRP忽略来设计我的包,为什么我会因为太多的组件修改而遇到麻烦CCP (Common-Closure-Principle)?