写在设计模式系列文章开头:
最近听到有不少同事在讨论设计模式这个话题,无外乎是围绕几个方面,到底什么是设计模式?何时该用设计模式?设计模式有什么用?
尤其是在一些刚毕业的童鞋面前,设计模式更是被蒙上了一层神秘的面纱。于是,我准备花几个礼拜的业余时间,将设计模式全部总结一遍,我尽量用通俗易懂的语言和代码来书写我个人对设计模式的一些想法和经验,个人经验有限,如有错误的地方还请各位谅解。
首先,我觉得设计模式并没有什么,它无外乎是OO思维的一些经验总结。
所有设计模式的核心无非是去除本来可以直接生成对象或者调用对象方法的代码,然后多写些代码,多加些中间类来进行对象操作,达到更好的解耦和后期扩展修改的方便。
它的理论概念支撑就是接口,继承,组合,多态,抽象。
它主要围绕几个点来进行设计
1:尽量多采用组合,少使用继承;
2:将会变的部分抽取出来;
3:后期要在不修改原有代码类的情况下能增加新的功能;
4:能在运行时动态给类增加新的行为或功能;
5:依赖抽象,不依赖具体;
6:一个类不应该做太多的事情,不应该做超出它能力范围内的事情;
如果你对上面这些话看不太懂,没关系,看完后面的文章,我想你就能明白上面6点的具体含义了!
最后,设计模式并不是多么复杂的代码,它只是一种思维方式的体现,我建议你每看完一篇文章,一定要在脑袋里面仔细想想,能虚拟出一个场景来好好思考一下并且用所学的设计模式来针对你所想的场景敲些代码;这样,设计模式才能刻进你的脑子里!
好了,话不多说,开始正式写设计模式系列文章了!