关注你工程里的JAR包--Java和J2EE开发的另一种JAR地狱

 

   
    这里说的JAR地狱,指类路径里JAR包太多这个问题。另外一个“JAR地狱”的解释是“反模式”中的一个概念,请见http://windshome.iteye.com/blog/1840651
 
    我记得打开一个网上找来的工程,里边都会有一堆JAR包,尤其是web工程,里边看吧,光Apache Common的JAR包就很多,再有log4j的、日志的好多,slf4j、log4j等等,这还都是我自己能认识分辨的,很多看了名字,不知道是干啥用的,一大堆,呵呵!
 
    这个时候真想问一问这些工程的创建者,这些JAR包都是你要用的吗?能给个介绍,这些JAR包都是干啥的?哪里来的?你都引用了这些JAR的哪些功能?
 
   JAR包多了,很容易引发各种兼容性问题。如果是独立的(自己一个进程运行)产品还好,部署在共用的web服务器上就难说得很了,如果是API类的,提供接口给别人再用,带着一堆JAR,真的就是一种很糟糕的方式。
 
    也许很多人都习惯了,但是我有几次遇到客户要求我们提供我们产品的每一个JAR包的说明,里边每一个package的说明。因为是API类产品,客户担心,引用了我们API,会和他们自己业务的JAR包和命名空间冲突(我们的产品在使用第三方组件时非常保守和持重,还被challenge,那现在大量使用第三方包的会怎样呢?)。
 
    我觉得作为一个认真的设计师或开发人员,在产品设计开发过程中,应当关注一下你的类路径和你类库目录,看看都有些啥,需要的留下,不需要的剔出去。这个不算苛刻的要求。至少你要清楚你JAR包目录下的每一个文件,里边都有哪些package,这些jar会被谁用到。也许,这对现在的设计师和程序员,会非常不容易。
 
    我的观念,稀里糊涂的设计师和程序员,一定不会设计出好的系统。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值