设计模式(23种)

设计模式

设计模式(英语 design pattern)是对面向对象设计中反复出现的问题的解决方案。这个术语是在1990年代由Erich Gamma等人从建筑设计领域引入到计算机科学中来的。这个术语的含义还存有争议。算法不是设计模式,因为算法致力于解决问题而非设计问题。设计模式通常描述了一组相互紧密作用的类与对象。设计模式提供一种讨论软件设计的公共语言,使得熟练设计者的设计经验可以被初学者和其他设计者掌握。设计模式还为软件重构提供了目标。[[软件设计模式_百度百科 (baidu.com)](https://baike.baidu.com/item/软件设计模式/2117635?fromtitle=Design pattern&fromid=10186718)]

目的:提高代码的重用性、可读性、可扩展性、可靠性,使得程序呈现出高内聚、低耦合的特性。

七大原则:

1.单一职责原则:一个类应该只负责一项职责

2.接口隔离原则:客户端不应该依赖它不需要的接口

3.依赖倒转原则:高层不应该依赖底层,抽象不应该依赖细节,依赖倒转的中心思想就是面向接口编程

4.里氏替换原则:所有引用基类的地方必须能透明的使用其子类。

5.开闭原则:最基础最重要,当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是修改已有的代码来实现;

6.迪米特原则:一个对象应该对其他对象保持最少的了解。

7.合成复用原则:尽量使用合成聚合的方式,而不是使用继承;

设计模式分类:

  1. 创建型模式:单例模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式;
  2. 结构型模式:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
  3. 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

快捷方式:

1. 单例模式

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值