C++设计模式之前言
2012-10-26 20:25
295 查看
我个人接触设计模式的时间较晚,将它们应用在实际项目中也就这一两年的时间.当时为了快速的学习掌握设计模式,除了参考GoF的<设计模式>之外,还在网上参看了TerryLee的.NET设计模式系列文章,以及程杰的<大话设计模式>,并利用业余时间写了不少C++的例子.此时将它们一一整理发出来,也可以说是对自身的一次总结吧.
设计模式仅仅是模式而已,是一些解决特定问题的方法.世界上不存在通用的问题解决方案,因此才会有23种设计模式,而不是1种.当然,除了这些前人总结出来的模式之外,还有很多其他的模式,去解决以上这些模式所无法顺利解决的问题.
设计模式在使用上充满了技巧.如果仅仅为了用而去用模式,往往一个问题的解决方案会显得更加复杂与臃肿,充满了牵强附会的关联.使用模式的目的是使问题变得更加简洁而清晰,整体结构更加优美而有序.
写程序是能够放松心情的,看简洁清晰的代码会让人赏心悦目.真正的高手写出来的程序,通篇看不出模式的痕迹,整个程序从架构到细节都充满了简明的逻辑.只有将这些模式彻底吸收,并在无意识中融会贯通到程序及架构设计里,才能做到这点.
文中为了避免C++本身繁琐的内存操作,并凸显出各种模式本来的逻辑性,所以所有的指针操作都使用SmartPtr完成(stl里的auto_ptr太鸡肋了,boost::shared_ptr很好,但是代码主要以示意为主,所以我在这里不打算使用标准C++以外的库:).
come from:http://dark-c.at/blog/?p=51
设计模式仅仅是模式而已,是一些解决特定问题的方法.世界上不存在通用的问题解决方案,因此才会有23种设计模式,而不是1种.当然,除了这些前人总结出来的模式之外,还有很多其他的模式,去解决以上这些模式所无法顺利解决的问题.
设计模式在使用上充满了技巧.如果仅仅为了用而去用模式,往往一个问题的解决方案会显得更加复杂与臃肿,充满了牵强附会的关联.使用模式的目的是使问题变得更加简洁而清晰,整体结构更加优美而有序.
写程序是能够放松心情的,看简洁清晰的代码会让人赏心悦目.真正的高手写出来的程序,通篇看不出模式的痕迹,整个程序从架构到细节都充满了简明的逻辑.只有将这些模式彻底吸收,并在无意识中融会贯通到程序及架构设计里,才能做到这点.
文中为了避免C++本身繁琐的内存操作,并凸显出各种模式本来的逻辑性,所以所有的指针操作都使用SmartPtr完成(stl里的auto_ptr太鸡肋了,boost::shared_ptr很好,但是代码主要以示意为主,所以我在这里不打算使用标准C++以外的库:).
come from:http://dark-c.at/blog/?p=51
相关文章推荐
- 设计模式观后(c++还原之二十三 状态模式)
- 最常用的设计模式----单实例模式(C++ 实现)
- 设计模式C++学习笔记之七(AbstractFactory抽象工厂模式)
- 23种设计模式之装饰器模式(结构型,2 Decorator,c++实现)
- c++设计模式---适配器模式
- C++设计模式简介
- 设计模式C++实现(12)——备忘录模式
- 浅谈C++设计模式之工厂方法(Factory Method)
- 设计模式C++实现(1)——工厂模式
- C++设计模式之观察者模式
- C++ 设计模式 - 6大设计原则之单一职责原则
- 设计模式C++实现(6)——建造者模式
- C/C++ 设计模式:关于使用typeid时要注意的问题
- 设计模式 - 简单工厂模式(C++)
- C++与设计模式
- C++设计模式——装饰者模式
- 设计模式C++学习笔记之十四(Iterator迭代器模式)
- C++设计模式之工厂方法模式
- 设计模式C++实现(8)——代理模式
- 设计模式——模板方法模式(C++)