摘要:2. 开放封闭原则
software entity should be open for extension,but closed for modification
依据这个原则,我们在设计的时候,就要考虑设计中什么会发生变化,并且不让这变化影响到设计,当然在这里就会遇到“过度设计”的问题了,而且预测变化对经验的要求比较高,创建抽象所付出的代价也很大,所以......
摘要: spring使用术语一个对象的 advisor来表示一个方面,包含一个通知和一个指定特定连接点的切入点。 各种通知类型有methodinterceptor (来自aop联盟的拦截器api)和定义在org.springframework.aop包中的 通知接口。所有通知必须实现org.aopalliance.aop.advice标签接口。 spring-framework-1.1.2以上支持取出就......
面向对象设计五大原则(3)
4. 依赖倒置原则
高层模块不应该依赖于低层模块.二者都应该依赖于抽象. 【程序编程相关:
Java 理论与实践: 关于异常的争论】
【推荐阅读:
Servlet/JSP服务器端的重定向】
【扩展信息:
基于Java的IDEA加密算法探讨
】
抽象不应该依赖于细节,细节应该依赖于抽象.
抽象层次包含的是应用系统的商务逻辑与宏观的战略性决定,而具体层次含有的是与实现有关的算法与逻辑,具体层次的代码会经常发生变动,不能避免出现错误.所以便应该是高层的策略设置模块影响低层的细节实现模块,而不是相反.比如说,先制定业务逻辑的规则,再实现数据库操作等等细节.
比较合适的模型是:每个较高的层次都为它需要的服务声明一个抽象接口,较低的层次实现这个接口,每个高层类都通过该抽象接口使用下一层.换句话来说,由客户类声明它们需要的服务接口,仅当客户需要时才对接口进行改变,所以改变实现细节的类就不会影响到客户.
拿«敏»中p118中button与lamp对象的例子来说,作者举了一个不成熟的设计,如下:
public class button{
private lamp itslamp;
public void poll(){
if(/* some condition*/){...
下一页 摘要:一个数据库缓冲池指的是缓存于内存空间中的数据库物理连接,这些数据库连接可以被重复使用。数据库缓冲池对于提高java 数据库应用程序的性能十分重要,尤其是当这个java 数据库应用程序运行于中间层服务器环境时。
数据缓冲池存在于中间层服务器环境当中,可以被不同的java 应用程序所调用。javax.sql.rowset 包添加了对缓冲数据源的支持,即可以将缓冲池缓冲的数据库连接看作是一个是实实在在......