设计模式六大原则简单介绍
小白浏览:5902022-09-06 20:57:50本文累计收益:0我也要赚钱

最近学习设计模式六大原则,简单记录一下学习内容,方便以后复习查阅,如有理解的不对请评论指正。设计模式可以简单理解为面向对象语言开发过程中,遇到各种场景和问题,解决方案和思路。设计模式六大原则为:单一职责原则、里氏替换原则、迪米特法则、依赖倒置原则、接口隔离原则、开闭原则。下面用几句话简单概括一下。

一、单一职责原则

简单说就是一个类只做一件事,一个方法只做一件事。使用单一职责原则可以使代码简单、稳定、强大。

如果一个类相对稳定,扩展变化少,而且逻辑简单,违背单一职责也没关系

一个类不要让他太累

二、里氏替换原则

任何使用基类的地方,都可以透明的使用其子类:继承+不改变行为,所谓透明就是父类的东西换成子类后不影响程序。

继承:通过继承,子类拥有父类的一切属性和行为,任何父类出现的地方,都可以用子类来代替。

子类必须完全实现父类有的方法,如果子类没有父类的某些东西,就断掉继承。

子类可以有父类没有的东西,所以子类出现的地方不一定能用父类代替。

父类已经写得方法,不用new实现

父类已经实现的东西,想改的话,就必须用virtual + voerride

去掉内部依赖--降低访问修饰符

三、迪米特法则

迪米特法则也叫最少知道原则,一个对象应该对其他对象保持最少的了解。

高内聚,低耦合:高度封装,类与类之间减少依赖

耦合关系:依赖、关联、组合、聚合、继承、实现

四、依赖倒置原则

高层模块不应该依赖于低层模块,二者应该通过抽象依赖,而不是依赖细节。

抽象:抽象类、接口

细节:具体的类

依赖细节:程序写死了,不谈什么扩展

依赖抽象,更具有通用性;而且具备扩展性

细节多变的,抽象是稳定的;系统架构基于抽象来搭建,会更稳定更具备扩展性

面向抽象编程,底层模块里面尽量都有抽象类/接口,在什么参数、变量、属性,尽量都是接口/抽象类

五、接口隔离原则

客户端不应该依赖它不需要的接口。

一个类对另一个类的依赖应该建立在最小接口上。

实现一个接口的时候,只需要自己必须的功能。

实现接口就必须把方法里面的全部方法实现。

可以多重实现,所有可以拆分,然后多个实现。

六、开闭原则

对扩展开放,对修改关闭

如果有功能扩展变化的需求,希望是增加类而不是修改

修改会影响原有功能,引入错误

增加类就不会影响原有的东西

 

评论列表
发表评论
+ 关注