码迷,mamicode.com
首页 > 其他好文 > 详细

设计模式六大原则

时间:2020-03-22 01:20:29      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:耦合性   变化   访问   有一个   更新   成员变量   重载   复用   方式   

1、单一职责原则

就一个类而言,应该只有一个引起它变化的原因。意思是,一个类应该实现单一的职责,如果功能太多就应该将类拆分。

2、开放-封闭原则(Open Close Principle)

软件实体(比如类、模块、函数等),对于扩展是开放的,对于更改的封闭的。意思是,如果软件要进行拓展时,不能去修改原代码,而应该去拓展原代码。这样能保证程序有较好的拓展性,易于维护和更新升级。为了实现这个功能,需要遵循“依赖倒转原则”。

3、依赖倒转原则(Dependence Inversion Principle)

即要面向接口编程,而不应该面向实现类编程。

4、里氏替换原则(Liskov Substitution Principle)

如果程序中使用的是父类的话,那一定能替换成子类,并且察觉不出父类和子类对象的区别。

换个说法,即类B继承类A时,除添加新的方法完成新增功能外,尽量不要重写父类A的方法,也尽量不要重载父类A的方法。即子类可以拓展父类的功能,但尽量不要修改父类的功能。

5、迪米特法则(最少知识原则)(Demeter Principle)

一个类对自己依赖的类的内部结构了解的越少越好,即减小类之间的耦合性。所以我们在设计类的时候,尽量降低成员变量的访问权限(private类型),所有逻辑都应该通过方法对外暴露。这样当这个类发生修改时,可以最小限度的影响其他类。

迪米特法则还有一个更简单的定义:只与直接的朋友通信。首先来解释一下什么是直接的朋友:每个对象都会与其他对象有耦合关系,只要两个对象之间有耦合关系,我们就说这两个对象之间是朋友关系。耦合的方式很多,依赖、关联、组合、聚合等。其中,我们称出现成员变量、方法参数、方法返回值中的类为直接的朋友,而出现在局部变量中的类则不是直接的朋友。也就是说,陌生的类最好不要作为局部变量的形式出现在类的内部

6、合成复用原则(Composite Reuse Principle)

原则是尽量首先使用合成/聚合的方式,而不是使用继承。

设计模式六大原则

标签:耦合性   变化   访问   有一个   更新   成员变量   重载   复用   方式   

原文地址:https://www.cnblogs.com/moongeek/p/12543679.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!