标签:
之前看Head First设计模式的时候照着书上的代码实现了一个C++版本(书上是Java版本的),代码上传在https://github.com/clpsz/Book-HFDP-Code。
当时因为能力有限,没有直接选择看GOF的《设计模式:可复用面向对象软件的基础》。最近一个月在Windows上写了点QT的小程序,对C++及设计模式有了点认识,回头再来看GOF的大作也不觉得有那么的难了。所以抽空把这本书通读了一遍,虽然书上本来就有些C++的代码,但是基本上都是基于一个特定的场景的,且很多都不全,因此我就顺便把里面所有的模式都写了一遍并放到Github上去了,地址如下https://github.com/clpsz/GOF-Design-Patterns。所有代码花了我三天多一点的时间,从周六开始写,到今天周二早上。
所有代码都是该模式的Demo版,没有预设的场景,没有使用第三方库,只用到了string,vector,map这几个STL,因此直接原生C++即可编译,我的测试环境为Ubuntu 12.04 64bit。
之前一直在做Linux开发,所以对C语言比较熟,直观的感觉就是C语言好强大,效率高,依赖少,运行容易。最近做了点C++,相对于C而言,执行效率几乎没降低,而开发的效率大大提高了。个人感觉我在使用C++的时候,有以下一些非常方便的特性:
感觉以后能用C++的地方都不想再用C了。
欢迎大家针对代码https://github.com/clpsz/GOF-Design-Patterns提意见,欢迎讨论。
标签:
原文地址:http://www.cnblogs.com/clpszpp/p/gof_design_patterns.html