这一章节我们来总结一下我们之前的思考过程。
1.在最初的场景里面,我们只有不大改变的增删改查
2.需求改变了,需要增加导入导出功能
3.立刻想到的就是直接在基类里面直接增加方法,
优点:直接、快速
缺点:有一部分不符合需求
4.在想到通过接口,大家来实现同一样的接口,从而解决问题
优点:直接
缺点:代码不可复用
5.引入设计原则-分离变化与不变
优点:把变化部分独立出来,变化部分也可以进行复用
缺点:代码增多,而且由于直接使用类,导致不能够动态的设置独立的行为
6.引入设计原则-面向接口编程
优点:
(1)把变化部分通过接口抽象出来,变成不变的部分,可以放到基类去
(2)可以动态改变导入导出的行为
(3)当新增导入导出的行为时,可以便捷的维护
缺点:
(1)代码的增加
我们通过逐步的改变,一步步的推进重构系统,到了最后我们发现,其实我们正在使用策略模式。
总结:我想通过这些篇章来说明我是怎么思考某种需求增加的问题,从而引导大家思考,最后得到原来可以使用设计模式即可,而不是直接告诉大家策略模式是什么?他是怎么使用的?使用场景是什么?等等。谢谢
目录:http://blog.csdn.net/raylee2007/article/details/50951190
我的github:https://github.com/raylee2015/designpattern