设计模式02--设计原则

 

目录

 

1.七大原则   

2.开闭原则

3.依赖倒置原则

4.单一职责原则:

5.接口隔离原则

6.迪米特原则

7.里氏替换原则

8.合成复用原则


1.七大原则   

      单一职责原则:只有一个原因引起这个类的变化,也就是说他只负责一件事情

      开闭原则

      里氏替换原则:就是说在基类出现的地方可以透明的引用子类对象

      依赖倒置原则:高层模块不应该依赖底层模块,两者都应该依赖其抽象

      接口隔离原则:客户端不应该依赖他不需要的接口

      迪米特原则(最少知道原则):一个对象应该对其他的对象保持最小的了解,即低内聚,高耦合

      合成/复用原则:

   2.开闭原则

     

       场景:比如说要对课程类进行扩展一个打折的功能,不应该去修改公共的接口,而是应该继承原来的实现类

  3.依赖倒置原则

      

       场景:不要面向实现编程,而要面向接口编程,高层的应用模块不能直接依赖于底层模块,底层模块应该抽取出一个接口或者抽象类,这样底层模块注入接口,然后高层模块依赖接口的实现就行了。如下,Test属于高层模块,Geely属于底层模块,他们不应该互相依赖,而是都应该依赖抽象ICourse.

      

  4.单一职责原则:

   

    场景:类,方法,接口都需要遵循单一职责原则,但是在实际开发中,很多时候都不符合单一职责原则。接口和方法应该做到单一职责,类的单一职责的话容易引起类的爆炸。

5.接口隔离原则

   

    注意点:

   

    场景:

6.迪米特原则

 

    注意:

 

  场景:最主要的是要分清楚哪些类是朋友,哪些类不是朋友

7.里氏替换原则

  主要是为了正确的使用继承

 定义:使用基类的地方,必须透明的使用其子类对象

 使用继承时子类不要重写父类的方法,在适当的情况可以通过聚合组合依赖来解决问题

 

比如说原来B类继承A类,现在不能去重写A类的方法,而是把公共的都提到Base类中,然后用组合的方式来解决A类和B类的问题。

8.合成复用原则

定义:尽量使用合成继承的方式,而不是使用继承

发布了217 篇原创文章 · 获赞 70 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/weixin_37650458/article/details/103217894