读前辈的大话设计模式(三)番外篇之设计开发原则,抒自己的读后感

这是一篇纯理论的,作为了解体会即可。

  1、 单一职责原则(Single Responsibility Principle,简称 SRP)解释:一个类,应该仅有一个引起它变化的原因。

    如果一个类承担的职责过多,就等于是把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力,这种耦合会导致脆弱的设计,当变化产生时,设计会遭受刀意想不到的破坏。

    单一职责原则判定:如果你能够想到多于一个的动机去成功改变一个类,那么这个类就具有多余一个的职责,也就是职责不再单一。

    单一职责解决的是代码的易维护、易扩展、易复用、灵活多变等问题。常见应用就是接口隔离原则,即接口的功能尽量单一。

    2、开放-封闭原则(the Open-Close Principle):尽量不要修改已有代码,将功能扩展到项目中去,即修改代码方向关闭,功能扩展方向开放。事实上,绝对的修改关闭是不可能的,无论模块是多么的封闭,都会存在一些无法对其保持封闭的的变化。既然不可能完全封闭,设计人员必须对他设计的模块的哪种变化封闭做出选择,他必须先预测出最有可能发生的变化种类,然后构造抽象来隔离那些变化。

    3、依赖倒转原则:依赖于抽象,而不依赖于具体。好处:将来变量可以引用他的任意一个子类对象,如果是依赖具体的话,将来就只能使用一种类型。推荐面向接口编程。

    4、里氏代换原则:一个软件实体如果使用的是一个父类的话,那么一定适用于其子类,而且他察觉不到父类对象和子类对象的区别,也就是说在软件里把父类都替换成他的子类,程序的行为没有发生变化,即子类必能够替换他们的父类型。

    5、合成。聚合、复用原则,即通过关联关系代替继承关系来对类中成员进行使用。这条原则,详细解释请看这篇文章 Java设计模式——合成/聚合复用原则

    6、迪米特法则:也叫最少知识原则,如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用,如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。强调的是类之间应该保持一种低耦合的关系。类之间的耦合关系越弱越有利于复用,当修改其中的某一个时,不会对有关系的类造成波及。

猜你喜欢

转载自blog.csdn.net/medier/article/details/76565052
今日推荐