一、装饰者模式一个类的功能扩展可以有两种方式:(1)类的继承(高耦合,会产生更多的子类,从而引起类的爆炸)(2)对象组合即装饰模式(降耦,不会创造更多的子类)动态的为对象添加功能)所以类应该对扩展开放,对修改关闭 。装饰者设计模式注意事项:(1)装饰者和被装饰者必须具有相同的超类型。(2)装饰者即可...
分类:
编程语言 时间:
2015-06-22 19:16:22
阅读次数:
137
EntityFramework默认是把数据访问和实体耦合在一起,显然这样不符合分层的要求和思想。我的方法是强制分离实体类到Model层,过程如下图所示。演示程序下载1.2.3.4.5.6.7.8.9.
分类:
其他好文 时间:
2015-06-22 08:44:49
阅读次数:
149
依赖注入是php编程中的一种设计模式,其目的也是为了降低耦合度,提高可维护性。问题现象:我们在编程过程中常常遇到一个类中实例化另外一个类,这个类中又实例化了一个其他类,这种层层包裹的形式,常常使我们在修改代码的时候,修改了一次,相关的上层也要跟着修改,如果层级关系比较复杂,这种修改就是灾难性的。解决...
分类:
其他好文 时间:
2015-06-21 19:48:59
阅读次数:
137
读《软件工程》最后一章有感一般有过面向对象编程的人,认为最难也最头疼的就是设计了。一个好的项目,设计至少可以占到百分之五十甚至更多。林锐的文章当中,自始至终在灌输两个思想,一个是高内聚低耦合,一个是设计应当以行为为中心而非数据为...
分类:
其他好文 时间:
2015-06-21 13:06:46
阅读次数:
161
1、Struts2的概念 Struts2 是轻量级的MVC框架,主要解决了请求分发的问题,重心在控制层和表现层。 轻量级 低侵入性,与业务代码的耦合度很低。即业务代码中基本不需要import它的包。 MVC框架 Struts2实现了MVC,并提供一系列API,采用模式化方式简...
分类:
其他好文 时间:
2015-06-20 16:56:54
阅读次数:
153
观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,他的所有依赖着都会收到通知并自动更新。设计原则 为了交互对象之间的松耦合设计而努力 1 using System; 2 using System.Collections; 3 using System.Collections...
分类:
其他好文 时间:
2015-06-20 15:32:13
阅读次数:
96
代理模式理解
为其他对象提供一种代理以控制这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。
代理模式能够协调调用者和被调用者,在一定程度上降低了系统的耦合度。
为什么需要代理?
因为一个良好的设计不应该轻易的修改。这正是开闭原则的体现:一个良好的设计应该对修改...
分类:
其他好文 时间:
2015-06-19 21:37:09
阅读次数:
147
Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分...
分类:
编程语言 时间:
2015-06-19 17:00:17
阅读次数:
197
1.定义使多个对象都有机会处理请求,从而避免了请求的发送者和接受者之间的耦合关系,将这些对象连成一条链,并沿着这条链传递该请求,直到有对象处理它为止。责任链模式的重点是在"链"上,由一条链去处理相似的请求在链中决定谁来处理这个请求,并返回相应的结果。2.代码实现 public abstract...
分类:
其他好文 时间:
2015-06-19 11:45:51
阅读次数:
98
SailingEase WinForm 框架为您实现了许多用于开发基于.NET 平台的 Windows应用程序所需的服务,如多文档窗口管理,上下文菜单管理,系统环境相关的服务等等。基于这些服务,您将轻易获得质量可靠,扩展性强,低耦合度可配置化的专业Windows应用程序。