设计模式六大原则

      在大话设计里有六种原则:单一职责原则、开放-封闭原则、依赖倒转原则、里氏代换原则、迪米特法则和合成/聚合复用原则。这六种原则各有其特点,那它们是用来做什么的?在软件设计的过程中它们起了什么作用,什么时候情况下用到它们,我觉得这些都是我们需要掌握的。

名称

是什么

做什么

作用

单一职责

就一个类而言,应该仅有一个引起它变化的原因。

职责分离

减少职责的耦合度,代码才能易维护、易扩展、易复用、灵活多样

开发-封闭

是说软件实体(类、模块、函数等等)应该可以扩展,但是不可修改。

面向对象 ,设计模块应对变化做出选择,构造抽象来隔离变化                     

面对需求的改变却可以保持相对稳定,只需增加新代码,不是更改现有代码;可维护、可扩展、可复用、灵活性好。

依赖倒转


A、 高层模块不应该依赖底层模块。两个都应该依赖抽象。

B、 抽象不应该依赖细节。细节依赖抽象。

面向对象,针对接口编程,不要对实现编程;

调用低层函数

实现代码或模块可以很容易地复用

里氏代换

子类类必须能够替换它们的父类型。

应对需求变化

子类型的可替换行使得父类类型的模块在无需修改的情况下可以扩展

迪米特

如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。

降低类之间的耦合度

有利于复用,弱耦合类被修改,不会对有关系的类造成波及,信息的隐藏促进了软的复用。

合成/聚合复用

尽量使用合成/聚合,尽量不要使用类继承。

封装类,并集中在单个任务上

有助于保持每个类被封装,集中在单个任务上。使得类和类继承层次保持较小规模,并且不太可能增长为不可控制的庞然大物。

     总结

通过表格的形式进行分析,发现这六大原则都体现了面向对象的思想,都是为了应对需求变化,使得程序模块代码具有可维护性、 可扩展、可复用、灵活性好。这六大原则的诞生就是为了减轻程序员的工作量的。                                                                                                                                                               

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 18
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值