|
1、总起 对java开发者来说,没有什么能够比得心应手的集成开发环境(integrated development environment,简称ide)更令人着迷。 所谓ide,就是把编写、编译、调试、运行集成在一个统一开发环境中的软件,并且还增加了许多提高开发效率的实用功能,比如高级编辑功能、自动编译、设置断点逐步调试、在ide内部显示运行结果等。徒手开发好比刀耕火种,用ide可谓进入了蒸汽时代。 十年前,由于技术所限,ide还是奢侈品。随着科技的飞速发展,十年之后的今天,界面易用、功能强大、速度飞快的ide已经无法成为人们热衷的话题,即便免费也难以成为怦然心动的惟一理由。套用经济学术语,人们渴望的不仅仅是一个传统的ide,而是一种边际效应递增的开发工具——更多的可用资源、更高的开发效率、更合理的开发方法,以及更保值的知识投入——免费当然再好不过了。 eclipse就是这样一个开发工具——开放源代码、免费、优秀的厂商支持,并且拥有丰富的扩展资源。 2、eclipse的构架 如果把java开发者比作铁匠,那么把eclipse比作铁匠铺就再合适不过了——你不但能够制作产品,还能够打造开发工具。 当下载了eclipse,你直接接触到的是: ★用来编辑和调试java源代码的java开发工具箱(java development toolkit,简称jdt),功能相当于ide,用来开发产品。 ★可以扩展eclipse本身的插件开发环境(plug-in development environment,简称pde),好比winamp等多媒体播放器的插件开发包,用来打造开发工具。 实际上,eclipse的基础是eclipse平台(eclipse platform),提供软件开发工具集成的服务,而各种开发工具,包括jdt和pde,都是用插件的形式提供的。插件设计使得eclipse具有开放式可扩充的结构。比如,你想开发c/c++程序,装一个c开发工具(c development toolkit,简称cdt)插件代替jdt即可。同理,通过开发相应插件,eclipse也可以用来开发微软的c#程序。eclipse设计的优美之处在于,除了小部分运行的核心,其他都是插件。 通过插件机制,eclipse体现了一种主观能动的态度:它提供给你一个开放的平台、一个平等参与的机会,以及一些需要遵守的总体规则,然后你尽可快意恩仇,以出人意料但又令人拍案叫绝的方式来使用eclipse.如果你有新的需要而eclipse没有满足,自己动手做个插件吧,不但丰衣足食,对整个eclipse社群也是直接的贡献。 主观能动并非开发工具的惟一态度。与eclipse竞争的开发工具,比如borland公司的jbuilder,采用的是另一种做法:你支付高昂的费用,borland提供一个近乎全能的jbuilder——包括支持eclipse不内建提供的jsp(服务器端动态网页技术)、ejb(一种企业级数据持久技术)和web services(web服务)的开发。 如若你要求新的功能,你可以告诉善于聆听用户意见的borland,或许他们会在下一个版本中加上新特性满足你的要求。当然也可能完全不理你,认为你的需求不足以令他们开发一个新特性。borland公司的态度充满了商业的严谨,jbuilder也堪称经典,但eclipse的那种潇洒和自由,用户的那种强烈的归属感,溢于言表。 3、开放源代码 eclipse是一个开放源代码的软件,是以common public license (简称cpl)授权形式发布的。开源通常意味着免费,eclipse也不例外。 虽然eclipse是一个开放源代码的项目,但由ibm这样一个商业主体领导着项目的开发,这一点跟普通的趋于无政府主义的开源软件有所区别。实际上,cpl授权旨在促进eclipse平台上的商业应用,呈现一个基于eclipse的免费和商业软件共存的系统。 公开源代码的一个自然结果,就是eclipse开发者一直在听取用户的意见——实际上,eclipse开发者本身就是eclipse最忠实的使用者。而eclipse开发者中,不乏ibm的杰出科学家,所以其品质及理念极为出色。
|