设计模式-原则

举报
AAAI 发表于 2021/05/05 01:11:03 2021/05/05
【摘要】 首先介绍一下设计模式。 软件设计模式(Software Design Pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。 23条设计模式又名为GoF23[“四人组”(Gang of Four,GoF)],可以看作是一个解决方案。 主要内容:抽象和思维,对类的封装,继承,多态和类的关联和组合关系。 面向对象的七大原则 ...

首先介绍一下设计模式。
软件设计模式(Software Design Pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。
23条设计模式又名为GoF23[“四人组”(Gang of Four,GoF)],可以看作是一个解决方案。
主要内容:抽象和思维,对类的封装,继承,多态和类的关联和组合关系。

面向对象的七大原则

1、开闭原则(Open Close Principle)*

对扩展开放,对修改关闭。

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

继承必须确保超类所拥有的性质在子类中仍然成立。子类继承父类,要拥有父类中所有的功能,并且不要修改父类的原有功能,尽量添加新功能。多态:要有继承;要有重写;父类引用指向子类

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

面向接口编程,依赖于抽象而不依赖于具体细节。降低耦合性。

4、单一职责原则(SRP:Single responsibility principle)

控制类的粒度大小,一个类不应该承担更多的职责。一个方法干一件事,满足原子性,细节。

降低依赖,降低耦合,提高内聚性。

5、接口隔离原则接口隔离原则(Interface Segregation Principle)

为各个类建立它们需要的专用接口。使用多个隔离的接口,比使用单个接口要好。

6、迪米特法则,又称最少知道原则(Demeter Principle)

只与你的朋友交谈,不和陌生人说话。关联,组合类之间进行访问方法,不要直接交流。

7、合成复用原则(CRP:Composite Reuse Principle)

尽量使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现。

总结

设计原则 一句话归纳 目的
开闭原则 对扩展开放,对修改关闭 降低维护带来的新风险
依赖倒置原则 高层不应该依赖低层,要面向接口编程 更利于代码结构的升级扩展
单一职责原则 一个类只干一件事,实现类要单一 便于理解,提高代码的可读性
接口隔离原则 一个接口只干一件事,接口要精简单一 功能解耦,高聚合、低耦合
迪米特法则 不该知道的不要知道,一个类应该保持对其它对象最少的了解,降低耦合度 只和朋友交流,不和陌生人说话,减少代码臃肿
里氏替换原则 不要破坏继承体系,子类重写方法功能发生改变,不应该影响父类方法的含义 防止继承泛滥
合成复用原则 尽量使用组合或者聚合关系实现代码复用,少使用继承 降低代码耦合

参考:一句话总结软件设计七大原则

文章来源: blog.csdn.net,作者:αβγθ,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_38022166/article/details/116405590

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。