设计模式学习与总结

一、原文链接

https://www.cnblogs.com/EthanWong/p/16045901.html
1.工厂模式
2.模板模式
3.策略模式

二、学习思考总结

1.工厂模式

代码均在上述链接当中,以下均为本人学习总结

有时候业务流程会出现很多类别判断,然后出现很多的if-else代码,比如平台抽奖会出现不同的奖品,然后发放不同的奖品,一般的业务逻辑流程就是通过一个奖品类别枚举字段进行if-else判断,选择性判断进入相应的方法体执行相应的奖品发放业务代码
引入工厂模式后,可以统一抽象出一个接口类,里面定义奖品发放接口方法,并且统一定义入参,每一类奖品定义相应的接口实现类,在实现的接口方法当中个性化书写相应奖品的业务代码,最后各个奖品实现类的实例统一由工厂类StoreFactory进行获取管理,需要使用是通过工厂类StoreFactory根据奖品的枚举值获取

2.策略模式

就是将上述的各个发放奖品实例在初始化时放入Map当中,这里用到的是afterPropertiesSet方法,在奖品实例初始化完成时将本实例放入StoreFactory的静态属性容器Map当中,这个容器在调用StoreFactory的静态方法时发生StoreFactory类加载和内部静态变量容器Map的初始化

3.模板模式

一个要执行几个流程,不同对象执行的流程相同,但执行的具体内容不同,将各个共同方法抽象到一个抽象类中,定义共同的执行抽象方法,要实现各自的个性化业务只要继承抽象类实现其抽象方法,在抽象方法中执行该对象想要执行的业务,简洁来说就是爸爸要做几件事,但是这几件事具体怎么做全部都让各个儿子来做,具体怎么做全看各个儿子自己的想法,使用上面调用方直接使用抽象类引用即可,已经赋值了具体实现类对象

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值