桥梁(Bridge)模式桥梁模式是一个非常有用的模式,也是比较复杂的一个模式。熟悉这个模式对于理解面向对象的设计原则,包括"开-闭"原则(OCP)以及组合/聚合复用原则(CARP)都很有帮助。理解好这两个原则,有助于形成正确的设计思想和培养良好的设计风格。在提出桥梁模式的时候指出,桥梁模式的用意是"将抽象化(Abstraction)与实现化(Implementation)脱耦,使得二者可以独立地变化"。这句话有三个关键词,也就是抽象化、实现化和脱耦。抽象化
系统 2019-08-29 23:06:20 2132
一个星期前买的这本关于Spring的书虽然现在已经是Spring2.5.5了但这本书写的真的不错,适用于初学Spring和以后工作中的工具书配合Spring的文档,绝对是以后工作中的必备!!本书的例子网站:http://www.livebookstore.net强烈推荐没有电子版好书推荐--《Spring2.0核心技术与最佳实践》
系统 2019-08-29 23:05:52 2132
从名字上看知道IoFilter应该是一个过滤器,不错,它确实是一个过滤器,它和Servlet中的过滤器类似,主要用于拦截和过滤I/O操作中的各种信息。在Mina的官方文档中已经提到了IoFilter的作用:(1)记录事件的日志(这个在本文中关于LoggingFilter的讲述中会提到)(2)测量系统性能(3)信息验证(4)过载控制(5)信息的转换(例如:编码和解码,这个会在关于ProtocolCodecFilter的讲述中会提到)(6)和其他更多的信息还是
系统 2019-08-29 23:01:55 2132
ifobject_id('T')isnotnulldroptableTgocreatetableT(idvarchar(10)primarykey,namevarchar(10))go--用触发器完成createtriggertr_T_insertonTinsteadofinsertasbegindeclare@iintselect*into#frominsertedselect@i=isnull(max(id),1000000)fromTupdate#s
系统 2019-08-29 22:52:34 2132
(本文适用于ESFrameworkV0.3+)在ESFramework介绍之(7)--服务器代理IServerAgent一文中,我们详细的介绍了IServerAgent,我们已经知道,客户端与服务器之间的所有通信都可经过IServerAgent,包括要转发的P2P消息。IServerAgent的主要目的是:(1)屏蔽客户端与服务端之间的通信协议(Tcp/Udp),ITcpServerAgent、IUdpServerAgent(2)可将异步的消息请求/回复转
系统 2019-08-29 22:49:37 2132
通俗的说:我们向报社订阅报纸,这个就是观察者模式的实例,我们是观察者(Observer),报社就是主题(Subject)。观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。现在我们设计一个气象监测站系统,此系统中的三个部分分别是气象站(获取实际气象数据)、布告板(显示当前的天气状况)、WeatherData(跟踪来自气象站的数据,并更新布告板),布告板可以提供扩展。系统设计类图如下:/***主题*@
系统 2019-08-29 22:39:38 2132
如下图所示:类,即代表类也代表函数表,我们看是怎么调用的.注意如下规则:1、每个类的信息都保存在内存里(类型加载后);2、每个类都会保存其继承的父类或实现的接口的类型指向。3、每个实例都保持一个对实例实际类型(类类型)的指向(指针),还保持一个对实例变量类型的指针。4、类实例化时,类方法不会复制,但成员变量都会按类信息重新分配内存,并初始化其值,父类的成员变量也都会分配内存,并属于当前实例虚函数的调用规则:1、当调用实例I的方法F时,首先会从实例的类型指针
系统 2019-08-29 22:27:59 2132
这篇文章是我从360doc上转的,本来是要把转的url列出来的,但是它们居然禁掉了复制,而且禁复制的js在放服务器端,害得我白看了那么多源代码,所以我不把url打出来了,对于这样的做法最简单的就是把网线一断,天下太平了.尽情得复制去吧,哈哈1.*.pro文件相信学习过QT的同志们,应该自己写了一个最简单的Hello程序。同时也就开始使用了一个命令:qmake–project。这个命令是用来生成QT的工程文件(.pro)的,这个文件是用来设置编译或者链接的变
系统 2019-08-12 09:30:08 2132
原文地址:http://mambotango.bloggerspaces.com/2007/07/flex-2-flex.html1个半月前,我参加了BEA公司在西安人民大厦举行的Dev2DevTeachDays。会上有幸聆听了Adobe公司马健(音)先生关于Flex2及相关技术的演讲。他通过介绍YahooMap强大的功能,使我第一次了解到FLex。演讲虽然只有短短的半个小时,但是我却深深的被Flex强大的表现力所吸引。随后的日子里我对比了当前诸多RIA,
系统 2019-08-12 09:30:03 2132
文章来源:http://blog.csdn.net/zhengzhb/article/details/7296944定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。问题由来:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试。解决方案:当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化
系统 2019-08-12 09:29:35 2132