定义 迭代器模式(Iterator
Pattern)提供一种方法访问一个容器对象中各个元素,而又不需暴露该对象内部细节。 迭代器模式通用类图 Iterator抽象迭代器
抽象迭代器负责定义访问和遍历元素的接口,而且基本上是有固定的3个方法:First()获取第一个元素,Next()访问下一个元素,I...
分类:
其他好文 时间:
2014-06-09 20:55:24
阅读次数:
316
本文将介绍抽象类、接口和一种称为契约式编程的技术。使用这些OPP机制,所编写的代码就不限于只能计算或者输出内容了。这些机制能够在概念层次上定义类之间交互作用的规则,也为应用程序的扩展和定制提供了基础。
分类:
Web程序 时间:
2014-06-09 20:11:33
阅读次数:
270
合成/聚合复用原则:尽量使用合成/聚合,尽量不要使用类继承。桥接模式:将抽象部分与它的实现部分分离,使它们都可以独立变化。解释:即一个系统可以有多种分类实现,把没种分类独立出来,让他们可以独自变化,减少他们之间的耦合。简单描述:1个Abstraction类,持有一个Implementor的引用,其方...
分类:
编程语言 时间:
2014-06-09 14:04:43
阅读次数:
328
命令模式:将一个请求封装成一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日记,以及支持可撤销的操作。简单描述:1个Receiver,知道如何执行命令。1个抽象命令,持有一个Receiver的引用,命令的执行则调用Receiver的对应方法(具体命令具体调用相应的方法)。1个I...
分类:
编程语言 时间:
2014-06-09 13:15:24
阅读次数:
363
C++ Delegate1.函数绑定 成员函数绑定(传入this指针
和函数指针)模板控制返回值和传参2.将绑定增加抽象类,使得其能插入通用容器3.Delegate类通过模板函数进行绑定函数的构造,减少需要填入的参数EventManager1.一个消息对应多个注册消息的类对象,一个类对象中可以有多个...
分类:
其他好文 时间:
2014-06-09 13:03:03
阅读次数:
226
Calendar类是个抽象类,因此本身不能被实例化,然而却创建了Calendar
的对象,但并不是抽象类可以创建对象。。。。。其实这个对象并不是Calendar
自身实例,而是其子类实例,这是在getInstance方法内部其实是实例化了一GregorianCalendar 对象并返回了,这里还反映...
分类:
其他好文 时间:
2014-06-09 12:59:09
阅读次数:
268
单件模式这是用的最多的模式,每一个正式的软件都要用它,全局配置、唯一资源、还有一个就是所有的工厂我都设计为单件模式,因此它的使用量大于工厂模式和抽象工厂模式之和。工厂模式和抽象工厂模式为了在程序代码中避免出现大量的New,因此我编写的软件代码这两三年基本都使用了工厂,由于深受受王咏武大侠关于舍熊掌取...
分类:
其他好文 时间:
2014-06-09 00:03:19
阅读次数:
251
抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们的具体类。简单描述:有多种抽象产品,并且每种抽象产品都有多个具体产品。一个抽象工厂,提供多个具体工厂,每个工厂则提供不同种类的具体产品。大话设计模式中的截图:例子代码:AbstractProductA类:1
package co...
分类:
编程语言 时间:
2014-06-08 21:59:56
阅读次数:
376
状态模式:当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。简单描述:一个Context类(存有一个抽象状态State引用),调用状态类的方法。State的具体类方法中会判断Context类的状态(如时间),满足一个状态则执行相应动作,否则把Context的State引用指向下...
分类:
编程语言 时间:
2014-06-08 20:53:11
阅读次数:
469
ER概念模型三条规则1,一个实体对应一张表,表名为实体的名字,字段为实体的属性2,一个一对多的联系,不单独成表,在多方对应的表中加入一方的主键作为外键3,一个多对多的联系肯定要单独成表,表名为联系的名字,表的字段为参与联系的实体的主键和联系的属性共同组成。在设计数据库的时候,在一堆繁琐的逻辑里抽象出...
分类:
其他好文 时间:
2014-06-08 20:46:10
阅读次数:
300