摘要:
3.2 httpclient ■ 概况:这个api扩展了java.net包,提供了模拟浏览器的功能。 ■ 官方资源:主页,二进制,源代码。 ■ 何时适用:当你要构造web浏览器的功能;当你的应用需要一种高效的办法进行http/https通信时。 ■ 示例应用:httpclientdemo.java。要求classpath中有commons-httpclient.jar,co......
摘要:
jakarta commons是jakarta的子项目,它创建和维护着许多独立软件包,这些包一般与其他框架或产品无关,其中收集了大量小型、实用的组件,大部分面向服务器端编程。 commons的包分成两部分:sandbox,commons代码库。sandbox是一个测试平台,用来检验各种设想、计划。本文介绍的组件属于commons代码库,文章将展示各个组件的功能、适用场合,并通过简单的例子......
面向对象设计五大原则(3)
4. 依赖倒置原则
高层模块不应该依赖于低层模块.二者都应该依赖于抽象. 【程序编程相关:
开源:对象运行时大小参考实现(sizeo】
【推荐阅读:
Php利用java解析xml[原创]】
【扩展信息:
·面向服务架构(SOA)带给我】
抽象不应该依赖于细节,细节应该依赖于抽象.
抽象层次包含的是应用系统的商务逻辑与宏观的战略性决定,而具体层次含有的是与实现有关的算法与逻辑,具体层次的代码会经常发生变动,不能避免出现错误.所以便应该是高层的策略设置模块影响低层的细节实现模块,而不是相反.比如说,先制定业务逻辑的规则,再实现数据库操作等等细节.
比较合适的模型是:每个较高的层次都为它需要的服务声明一个抽象接口,较低的层次实现这个接口,每个高层类都通过该抽象接口使用下一层.换句话来说,由客户类声明它们需要的服务接口,仅当客户需要时才对接口进行改变,所以改变实现细节的类就不会影响到客户.
拿«敏»中p118中button与lamp对象的例子来说,作者举了一个不成熟的设计,如下:
public class button{
private lamp itslamp;
public void poll(){
if(/* some condition*/){...
下一页 摘要:
已发行的版本:......