设计模式
Erorr
Erorr
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
设计模式学习笔记 - 2010/10/10
初学设计模式的时候,感觉自己写的代码必须套用几个模式才行,总是看原来的代码不顺眼,想重构成某某模式的样子。就像刚学C++的时候,一定要搞个基类然后继承一下才行。手上有把锤子,一切都成了钉子。 最近又开始看《设计模式》,又有了一些新的认识。感觉模式就是一种抽象出来的概念和术语。就像围棋,原来并没有定式,后来在实践中被人们认可了,就成了定式。而且围棋高手看到某个局面后,就会知道开局是用的那种布局,局部是什么定式。程序员也一样,了解模式后,一看代码就知道原来用的是什么模式。 由于从零开始开发的机会比较少,一般原创 2010-10-10 21:34:00 · 757 阅读 · 2 评论 -
设计模式学习笔记-Composite
Compoite表示的是“整体-部分”的关系,但不仅仅如此,否则简单的组合就可以完成。这个模式主要是使得用户对单个对象和组合对象的使用具有一致性。 《设计模式》书上举的例子是Graphic-Picture,但我觉得这里用“文件夹-文件”最直观。 文件夹里能包括文件夹和文件, 文件是“Leaf”子类,文件夹是“Composite”类。当需要遍历文件夹的时候,用这样一种“递归”的关系是很优雅的方式。 一般Composite类都包含一个List的容器,其中必有一个函数要递归处理这里面的对象。 我目前理解这原创 2011-05-12 21:54:00 · 662 阅读 · 0 评论 -
设计模式学习笔记-Singleton
这个应该是比较简单的一个设计模式,也是我接触的第一个模式。要点是构造函数声明为私有,定义一个指向自己的静态指针,在合适的时候new一个对象。简单的代码如下: 1: class Singleton { 2: public: 3: static Singleton* instance() 4: { 5: if (_instance == NULL)原创 2011-05-07 15:01:00 · 554 阅读 · 0 评论 -
设计模式学习笔记-Abstract Factory
这是23个设计模式的第一个,因此按照惯例,第一章第一节总会被看很多次。 但是我在实际工作中并没有遇到这个模式,也许是因为太麻烦的原因。 有“工厂”就有“产品”,所以这个模式里面主要是Factory和Product两种类,一般Factory和Product都会有自己的继承结构,即需要定义抽象基类和具体的实现类。 其实“工厂”只是在client和product之间加入了一层解耦合的类。而且client使用的可以是基类的指针或引用,可以充分利用多态的好处。 总之,这个模式并没有太多的技巧在里面,也许是因为原创 2011-05-08 22:50:00 · 644 阅读 · 1 评论 -
设计模式学习笔记-Factory Method
几年前学设计模式,没有坚持下来,原创 2014-04-20 22:50:30 · 582 阅读 · 0 评论
分享