本文由程序员伟哥倾情奉献,转载请注明出处。
微信公众账号:IT殿堂


设计模式六大原则可以用六字真言概括:

开、里、依;接、迪、合

可以这么想:
你有一只调皮的泰迪,嘴里叼了一只快递盒子,非要让你解开里面的内衣(依)做成网兜来住泰叼的这个子。幸亏程序猿大部分是男生……(⊙﹏⊙)!

五分钟精通设计模式(二)之设计模式六大原则


设计模式是一种软件的设计思想,主要是为了在大型软件中,多人协同的开发、升级、维护更加方便。所以中心思想就是:降低依赖,降低耦合。

一、开闭原则--Open Close Principle       
        1、一句话概括
        对扩展开,对修改关。        
        2、优点、为什么用它
        使程序的扩展性好,易于维护和升级。在程序需要进行拓展的时候,不用去修改原有的代码,实现一个热插拔的效果。
        3、怎么做
         想要达到这样的效果,我们需要使用接口和抽象类。后面具体讲设计模式时,我们会提到这个。

二、里氏代换原则--Liskov Substitution Principle
       简称LSP,又叫替换原则,根据LSP原则(即Liskov替换原则),是面向对象设计的基本原则之一。  
        1、一句话概括    
        任何接受父类型的地方,都应当能够接受子类型。
        2、优点、为什么用它      
        LSP是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基础上增加新的行为。
        3、怎么做
        实现“开-闭”原则的关键步骤就是抽象化。而基类与子类的继承关系就是抽象化的具体实现,所以里氏代换原则是对实现抽象化的具体步骤的规范。

三、依赖倒转原则--Dependence Inversion Principle
        1、一句话概括
        针对接口编程,依赖于抽象而不依赖于具体。
        2、优点,为什么用它
        这个是开闭原则的基础。

四、接口隔离原则--Interface Segregation Principle
        1、一句话概括
        使用多个隔离的接口,比使用单个接口要好。

        2、优点、为什么用它
        可以降低类之间耦合度。

五、迪米特法则--Demeter Principle
        又叫最少知道原则
        1、一句话概括
         一个实体应当尽量少的与其他实体之间发生相互作用。
        2、优点、为什么用它
        可以使系统、程序的功能模块相对独立,为了解耦合。

六、合成复用原则--Composite Reuse Principle
        1、一句话概括
        尽量使用合成/聚合的方式,而不是使用继承。
        2、优点、为什么用它

        当使用继承方式时,父类的变化很可能影响子类的功能,为了降低实现类之间的依赖,可以参考合成复用原则。


有兴趣大家可以关注我的微信公众账号:IT殿堂

相关文章: