设计模式总结

  1. 什么是设计模式?

设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计

模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。

  1. 为什么要学习设计模式?

  • 看懂源码:如果你不懂设计模式去看Jdk、Spring、SpringMVC、IO等等等等的源码,你会很迷

茫,你会寸步难行。

  • 学会前辈的代码:你去个公司难道都是新项目让你接手?很有可能是接盘的,前辈的开发难道不用

设计模式?

  • 编写好自己的代码:熟练的使用设计模式才会让自己变得更优秀,有的工作2-3年的程序员写的代码不仅难看,可维护性还较差。谁不想初来乍到,就能写一手优秀的代码呢!

  1. 设计模式分类

  1. 设计模式六大原则(POLIDD)

  • 单一职责(Principle of single responsibility)

  • 原则思想:一个方法只负责一件事情

  • 描述:单一职责原则很简单,一个方法 一个类只负责一个职责,各个职责的程序改动,不影响其它程序。 这是常识,几乎所有程序员都会遵循这个原则。

  • 优点:降低类和类的耦合,提高可读性,增加可维护性和可拓展性,降低可变性的风险。

  • 开放封闭原则(Open Close Principle)

  • 原则思想:尽量通过扩展软件实体来解决需求变化,而不是通过修改已有的代码来完成变化

  • 描述:一个软件产品在生命周期内,都会发生变化,既然变化是一个既定的事实,我们就应该在设计的时候尽量适应这些变化,以提高项目的稳定性和灵活性。

  • 优点:单一原则告诉我们,每个类都有自己负责的职责,里氏替换原则不能破坏继承关系的体系

  • 里氏代换原则(Liskov Substitution Principle)

  • 原则思想:使用的基类可以在任何地方使用继承的子类,完美的替换基类。

  • 描述:子类可以扩展父类的功能,但不能改变父类原有的功能。子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法,子类中可以增加自己特有的方法。

  • 优点:增加程序的健壮性,即使增加了子类,原有的子类还可以继续运行,互不影响

  • 依赖倒转原则(Dependence Inversion Principle)

  • 原则思想:依赖倒置原则的核心思想是面向接口编程.

  • 描述:依赖倒转原则要求我们在程序代码中传递参数时或在关联关系中,尽量引用层次高的抽象层类,

  • 优点:这个是开放封闭原则的基础,具体内容是:对接口编程,依赖于抽象而不依赖于具体

  • 接口隔离原则(Interface Segregation Principle)

  • 原则思想:使用多个隔离的接口,比使用单个接口要好。

  • 描述:还是一个降低类之间的耦合度的意思,从这儿我们看出,其实设计模式就是一个软件的设计思想,从大型软件架构出发,为了升级和维护方便。所以上文中多次出现:降低依赖,降低耦合。例如:支付类的接口和订单类的接口,需要把这俩个类别的接口变成俩个隔离的接口

  • 迪米特法则(最少知道原则)(Demeter Principle)

  • 原则思想:一个对象应当对其他对象有尽可能少地了解,简称类间解耦

  • 描述:大概意思就是一个类尽量减少自己对其他对象的依赖,原则是低耦合,高内聚,只有使各个模块之间的耦合尽量的低,才能提高代码的复用率。

  • 优点:低耦合,高内聚。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值