英雄联盟之「策略模式」-- 读后感

1、策略模式是把算法分离出来,解决的问题是如果很多类都有同一个算法,那么就不需要每个类都覆盖一次。而是改成把算法(接口和实现)抽出来,新建具体类的时候(某种英雄),把算法的实现赋予给英雄即可,不需要每个英雄类自己再实现一次算法,这样就减少了很多代码。

2、正因为如此,如果每个类都需要覆盖基类的方法,而不是很多类都用同一个基类方法,那么策略模式是不适用的。

比如:因为有很多种英雄的移动方法都是一样的,所以这是一种可以抽出来的策略,便于减少代码。

如果每种英雄的移动方法都不一样,那么把“移动”策略抽出来是没有意义的,也就是说,策略算法用在这里是没有意义的。

总结:只有当(目前或不久的将来)有很多类使用了同样的算法,那么才使用策略模式,把算法独立出来,否则策略模式是不适用的。

参考:英雄联盟之「策略模式」

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,066评论 25 709
  • 1 场景问题# 1.1 报价管理## 向客户报价,对于销售部门的人来讲,这是一个非常重大、非常复杂的问题,对不同的...
    七寸知架构阅读 10,548评论 9 62
  • 1 场景问题 1.1 报价管理 向客户报价,对于销售部门的人来讲,这是一个非常重大、非常复杂的问题,对不同的客户要...
    4e70992f13e7阅读 8,292评论 2 16
  • 四尊巨人仰头咆哮后,便个个盯着远处的东伯雪鹰,紧跟着他们嗖的就化作了残影。 虽说论速度要比本尊差,却依旧快的让东伯...
    im喵小姐阅读 3,233评论 0 0
  • 四月的墙 王宜振 四月的墙很薄很薄 只消捅一个小洞 就会漏进夏天的气息 夏天的气息很美丽很生动 有一只春天的蝴蝶 ...
    龟壳面阅读 6,602评论 0 0

友情链接更多精彩内容