从代码层面来讲,何时使用设计模式

1 工厂模式

想通过名称获取对象

2 抽象工厂模式

单个工厂不满足对象的生产

3 单例模式

全局只有一个对象

4 建造者模式

通过构造函数创建对象不方便,例如,构造函数参数太多

5 原型模式

重复创建相同的对象

6 适配器模式

将一个类的接口转换成客户希望的另外一个接口

7 桥接模式

对象存在两个维度的变化,例如,商品品质不同,其销售渠道不同。品质1-线下,品质2-线上,品质3-直播带货。不能给每种品质商品都创建类,这时候我们可以把销售渠道给抽象出来。

8 组合模式

对象数量很多,但是可以组合成树形结构。例如,树形菜单

9 装饰器模式

现有的对象添加新的功能,同时又不改变其结构。

10 外观模式

前端不需要知道系统内部流程

11 享元模式

相同的对象被多次使用

12 代理模式

直接访问对象存在问题时

13 责任链模式

有多个对象可以处理同一个请求,不确定具体哪个对象处理该请求

14 命令模式

认为是命令的地方都可以使用命令模式,例如,开机,关机

15 迭代器模式

遍历集合

16 中介者模式

对象之间关系复杂,依赖关系混乱

17 备忘录模式

需要提供一个可回滚的操作

18 观察者模式

需要监听某个对象的行为变化

19 状态模式

内部状态影响类的行为

20 策略模式

if else数量过多

21 模板模式

多个类存在相同的行为

22 访问者模式

经常为对象定义新的操作

23 过滤器模式

需要对请求进行过滤

  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
1) 优秀的程序应该是这样的:阅读时,感觉很优雅;新增功能时,感觉很轻松;运行时,感觉很快速,这就需要设计模式支撑。2) 设计模式包含了大量的编程思想,讲授和真正掌握并不容易,网上的设计模式课程不少,大多讲解的比较晦涩,没有真实的应用场景和框架源码支撑,学习后,只知其形,不知其神。就会造成这样结果: 知道各种设计模式,但是不知道怎么使用到真实项目。本课程针对上述问题,有针对性的进行了升级 (1) 授课方式采用 图解+框架源码分析的方式,让课程生动有趣好理解 (2) 系统全面的讲解了设计模式,包括 设计模式七大原则、UML类图-类的六大关系、23种设计模式及其分类,比如 单例模式的8种实现方式、工厂模式的3种实现方式、适配器模式的3种实现、代理模式的3种方式、深拷贝等3) 如果你想写出规范、漂亮的程序,就花时间来学习下设计模式吧课程内容和目标本课程是使用Java来讲解设计模式,考虑到设计模式比较抽象,授课采用 图解+框架源码分析的方式1) 内容包括: 设计模式七大原则(单一职责、接口隔离、依赖倒转、里氏替换、开闭原则、迪米特法则、合成复用)、UML类图(类的依赖、泛化和实现、类的关联、聚合和组合) 23种设计模式包括:创建型模式:单例模式(8种实现)、抽象工厂模式、原型模式、建造者模式、工厂模式。结构型模式:适配器模式(3种实现)、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式(3种实现)。行为型模式:模版方法模式、命令模式、访问者模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式(Interpreter模式)、状态模式、策略模式、职责链模式(责任链模式)2) 学习目标:通过学习,学员能掌握主流设计模式,规范编程风格,提高优化程序结构和效率的能力。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值