设计模式之策略模式

设计模式之策略模式

设计模式入门

1、设计模式是认名在面对同类型软件工程设计问题所总结的一些有用经验。

模式不是代码,而是某一类型问题的通用设计解决方案。也可以理解为解决问题的套路

2、学习设计模式最好的方式:在你的设计和以往的工程里寻找何处可以使用它们

3、设计模式的本质目的是使软件工程在维护性,扩展性,变化性,复杂度方面成O(N)

4、设计模式是基于面向对象为原则,设计模式是其具体的方法,工具

策略模式原理

1、前提: 超类里面挖了一个坑,每个子类都要来填,增加工作量,复杂度为O(N^2)

2、需要新的设计方式,应对项目的扩展性,降低复杂度:

​ 1) 分析项目变化与不变化部分,提取变化部分,抽象为接口+实现;

​ 2)将每一个变化的需求形成一个行为组

​ 3)新增行为简单,行为类更好的复用,组合更方便。既有继承带来的复用好处

3、策略模式:分别封装变化部分为行为接口,实现算法族,超类里放行为接口对象,在子类里具体设定实现行为 接口的行为对象。

​ 原则就是:分离变化部分,封装接口,基于接口编程各种功能。此模式让行为算法的变化独立于算法的使用者

策略模式示例演示

策略模式的注意点

1、分析项目中变化部分与不变部分

2、多用组合少用继承;用行为类组合,而不是行为的 继承。更有弹性

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值