大话设计模式之各种原则

        最近看了设计模式,其实所有的设计模式都是围绕这些原则来做事的。有的用到了一条,有的用到了多条。在了解各种模式了之后,回过头来再看一下各种原则,你会有不一样的理解。

  • 单一职责原则

        对于一个类而言,应该只有一个引起它变化的原因。

  • 开房封闭原则

        软件实体(类、模块、函数等等)应该可以扩展,但是不可以修改:就是对扩展是开房的,对更改是封闭的。

        在这个原则里面需要重要题的就是:拒绝不成熟的抽象和抽象一样重要。

  • 依赖倒转原则

        抽象不应该依赖细节,细节应该依赖于抽象。说白了就是:要针对接口编程,不要对实现编程。

        高层模块不应该依赖底层模块,两个都应该依赖抽象。

  • 里氏代换原则

        子类型必须能够替换掉他们的福类型。一个软件实体如果使用的是一个父类的话,那么一定适用于其子类,而且察觉不出父类对象和子类对象的区别。也就是说,在软件里面,把父类都替换成它的子类,程序的行为没有变化。

        正是由于子类型的可替换才使得使用父类类型的模块在无需修改的情况下就可以扩展。

        这条原则我感觉是你在使用继承时,一定要遵守的原则,否则你很有可能犯了乱用继承的错误。还有就是,这条原则我觉得应用最广的就是多态。

  • 最少只是原则

        只和你的密友谈话,不要让太多的类耦合在一起,免得修改系统中的一部分,会影响到其他部分。

  • 好莱坞原则

        别调用我们,我们会调用你。

  • 找出应用中可能需要变化之处,把他们独立出来,不要和那些不需要变化的代码混在一起。
  • 多用组合,少用集成。
  • 为了交互对象之间的松耦合设计而努力。
        不知已经看过一遍设计模式的你,再回头来看这些原则,是不是别有一番滋味?

你可能感兴趣的:(大话设计模式之各种原则)