代理模式是前天学习的,虽然以前也接触过设计模式,但是从来没有仔细去想过,现在想想自己的C++基本功就是个渣渣。
C++主要是对面向对象的理解,抽象继承多态三大特性。 想想前一年写的PHP,虽然一次次的说要用设计模式来优化那些面向过程的代码,可能是写得时间久了,面向过程已经根深蒂固了。 还记得以前项目的StatManager.php接口从我刚进公司的一万行,在我离职的时候已经达到了一万八千行,公司没有人愿意去并且敢去动它。
到现在深入学习了工厂、策略、装饰、代理设计模式,感觉这四种设计模式都有相同的特点,但是就是很模糊,有点抓不到它。
这四种设计模式都用到了多态,子类对父类的方法进行了重载。在代码运行的过程中,把子类对象转换成父类对象,使用相同的调用方法,可以做到动态匹配相应的被重载的方法,达到高大上的设计模式。
每当过度使用一种设计模式的时候,就会被另一种设计模式所否定,从而出现更优的设计。关于最有设计的选择,我这里还很迷茫,但是一口吃不成胖子,不急不躁,我知道以后有一天我肯定会弄明白他们的相同点和根本的区别的。
下面是代理模式看到的比较好的blog,大家也可以参考下。
设计模式感触之代理模式应用
http://jiangshuiy.iteye.com/blog/1333558
http://blog.csdn.net/cbf4life/article/details/6488565
http://www.blogjava.net/interface/archive/2008/01/04/172841.html?opt=admin