2020年4月16日 上午9:43
总结:
- 开闭原则是对扩展开放,对修改关闭。
- 开闭原则的主旨是为了拥抱变化。
- 在六大原则中,开闭原则只是一个思想,没有具体实际操作方法。其他五大原则都是为了实现这个开闭思想的一些方法和工具。
- 想要遵守开闭原则,就需要一个设计合理的系统。可以说在做系统设计的时候就要考虑到未来的扩展和改变。
- 一个应用中的重要策略决定及业务模型正是在这些高层的模块中。也正是这些模型包含着应用的特性。但是,当这些模块依赖于低层模块时,低层模块的修改将会直接影响到它们,迫使它们也去改变。这种境况是荒谬的。应该是处于高层的模块去迫使那些低层的模块发生改变。应该是处于高层的模块优先于低层的模块。无论如何高层的模块也不应依赖于低层的模块。
- 而且,我们想能够复用的是高层的模块。通过子程序库的形式,我们已经可以很好地复用低层的模块了。当高层的模块依赖于低层的模块时,这些高层模块就很难在不同的环境中复用。但是,当那些高层模块独立于低层模块时,它们就能很简单地被复用了。
- 这正是位于框架设计的最核心之处的原则
- 总结:
- 场景:一个应用中的重要策略决定及业务模型正是在这些高层的模块中
- 处理方法:无论如何高层的模块也不应依赖于低层的模块,相反高层模块应该独立于低层模块
- 效果:框架使用这种设计方式可以在将来很容易的添加子模块,并且对框架的使用者来说,使用方式一样的。