随笔分类 - 设计模式
设计模式实战:用Prototype模式提高系统的开发效率,用DynamicMethod、Flyweight模式提高系统的运行效率
摘要:DynamicMethod可以实现运行时的高效,Flyweight模式可以实现数据的共享,而Prototype模式通过实现对象的Clone,使我们的系统不必关心具体业务类的创建、构成和表示。三者结合,可以使我们系统的开发效率和运行效率都得到极大的提高。
阅读全文
设计模式实战:在WinForm中用Command模式实现可以撤销的数据操作
摘要:“你们开发的系统如果能够像Excel那样支持全选、反选、多选、撤销、导入、导出等命令;不要每次增加一条记录都必须按一下‘新增’,完了以后再按一下‘保存’,取而代之的是我想保存的时候一按‘保存’,就把我前面所有的操作全都保存,如果我的操作有误,可以撤销刚刚所做的操作。那真是爽死了。”很多的用户这样感慨。用户体验非常重要,很多的时候,如果用户觉得你的系统不方便,他就会拒绝使用。这样,系统也就没有什么意...
阅读全文
设计模式实战:组合型模式Composite,Adapter
摘要:考虑用网页的形式表现一个如Adapter Report的测试报告:一个报表由2部分组成,一是封面,一是对各个测试项目及其结果的描述。每个测试项目分为项目名称,测试数量,测试条件,测试结果,结果描述等几项。其中测试数量和测试条件可能不会出现,可能出现,结果描述有时需要以表格或列表的形式列出详细的数据,如果是以表格的形式,则有可能有是多级表头,每个表格的列数并不固定。总的来说,这个报表是树型结构,如下...
阅读全文
设计模式实战:AbstractFactory,Singleton
摘要:如果我们要做一个需要能够支持各种数据库的ORM。可以用到AbstractFactory,Singleton等设计模式。 我们先分析一下,要实现一个ORM,我们首先需要一个能够和各种不同数据库平台交互的一致的接口,我们把它叫做DBWR,意思就是“数据库读写”。它可以读取数据库中的数据,对数据库执行DDL操作。我们认为它有这些功能: 1、读取数据,以DataTable的形式返回,其原型是: publ...
阅读全文
浙公网安备 33010602011771号