对应经常使用jquery的朋友,方法的链式调用应该是已经很属性了,书上有模拟出一个很简单的类库代码,见代码如下:Function.prototype.method = function(name,fn){ this.prototype[name] = fn; return this;};(fun.....
分类:
编程语言 时间:
2014-06-28 23:12:29
阅读次数:
320
一. 举例
这个例子是书上的,假设有一个公司的组结结构如下:
它的结构很像一棵树,其中人力资源部和财务部是没有子结点的,具体公司才有子结点。
而且最关健的是,它的每一层结构很相似。
代码实现如下:
#include
#include
#include
using namespace std;
//公司类,提供接口
class...
分类:
编程语言 时间:
2014-06-18 07:58:08
阅读次数:
240
工厂模式分为三大类
简单工厂(SimpleFactory)
工厂方法模式(Factory Method)
抽象工厂模式(Abstract Factory)
动态工厂(Dynamic Factory,属于优化版简单工厂)...
分类:
其他好文 时间:
2014-06-18 07:54:35
阅读次数:
134
定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。
问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。
解决方案:遵循单一职责原则。分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责P2功能。这样,当修改类T1时,不会使职责P2发生故障风险;同理,当修...
分类:
其他好文 时间:
2014-06-18 07:44:12
阅读次数:
208
最近一段时间在学习PHP,买了《Head First P http:// HP&MySQL》中文版这本书,之前买过《Head First设计模式》,感觉这系列的书籍总体来说很不错。
HeadFirst 系列丛书的官网为:http://www.headfirstlabs.com/ , 有大概30本书,并且提供了每本书的代码下载,可以跟着书做做练习,不会的再看看源代码示例。
另外,学习P...
分类:
数据库 时间:
2014-06-18 07:03:08
阅读次数:
256
外观模式(facade pattern) 详解本文地址: http://blog.csdn.net/caroline_wendy外观模式(facade pattern): 提供了一个统一的接口, 用来访问子系统中的一群接口. 外观定义了一个高层接口, 让子系统更容易使用.外观模式包含三个部分:1. 子系统: 子类, 单个复杂子类 或 多个子类;2. 外观(facade)类: 把子系统设计的更加容易...
分类:
其他好文 时间:
2014-06-18 06:50:07
阅读次数:
225
接口隔离原则:
使用多个专门的接口比使用单一的总接口要好。
一个类对另外一个类的依赖性应当是建立在最小的接口上的。
一个接口代表一个角色,不应当将不同的角色都交给一个接口。没有关系的接口合并在一起,形成一个臃肿的大接口,这是对角色和接口的污染。
“不应该强迫客户依赖于它们不用的方法。接口属于客户,不属于它所在的类层次结构。”这个说得很明白了,再通俗点说,不要强迫客户使用它们不用的方...
分类:
其他好文 时间:
2014-06-18 06:46:17
阅读次数:
323
适配器模式(adapter pattern) 枚举器和迭代器 详解本文地址: http://blog.csdn.net/caroline_wendy参考适配器模式(adapter pattern): http://blog.csdn.net/caroline_wendy/article/category/2281679Java早期版本的枚举器(Enumeration)和现在的迭代器(Iterato...
分类:
其他好文 时间:
2014-06-18 06:41:15
阅读次数:
259
肯定有不少人跟我刚看到这项原则的时候一样,对这个原则的名字充满疑惑。其实原因就是这项原则最早是在1988年,由麻省理工学院的一位姓里的女士(Barbara Liskov)提出来的。
定义1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子...
分类:
其他好文 时间:
2014-06-18 00:52:52
阅读次数:
387