引用vividboy朋友的回复
今天早上看到了vividboy的回复,觉得说的很好,应该可以解释很多人的疑问。特发一文。:-)
看来我表达上还是有问题。呵呵。
以下为vividboy的回复:
1. 疑问一:分层架构中的面向接口
---------------
接口的修改,相当于契约的修改,这样引起的变化自然是难免的。规则都改变了,相关的内容自然也需要改变。我们在进行系统架构设计的时候坚持的根本 原则应该是“开-闭”原则,即对新增开放对修改关闭。由于对代码的修改将对原有系统造成冲击,这样对原有系统的功能也会造成一定的副作用,所以我们在修改 原有代码的时候要尽量的位置集中,并减少波及范围(这个就是耦合度的问题了。);同时针对新需求我们追求的是通过纯新增的方式来达到满足需求变化的目的, 而不需要对原有代码进行过多的修改,稳定的接口和易变的具体实现应该就是针对这个问题的。
说的很到位,这也是我没有说出来的话,谢谢vividboy!