




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Eclipse杂谈,BU2,起源,铁匠以打造自己的工具为荣。在进入这个行当之时,或接受特殊需求的任务前,制作称手的工具便成了头等大事。通过炼炉、铁砧以及锤子,铁匠循环进行着加热、锻造和冷却过程,直到把钢铁铸造成称手的家伙。与铁匠挥洒汗水和忍受高温相比,软件开发是一个既干净又抽象的过程。不过,代码与钢铁的相同之处就是它们都有延展性通过足够的技巧和努力,可以把钢铁或代码变成精致的工具或巨大的机器。 对Java开发者来说,没有什么能够比得心应手的集成开发环境(Integrated Development Environment,简称IDE)更令人着迷。 所谓IDE,就是把编写、编译、调试、运行集成在
2、一个统一开发环境中的软件,并且还增加了许多提高开发效率的实用功能,比如高级编辑功能、自动编译、设置断点逐步调试、在IDE内部显示运行结果等。徒手开发好比刀耕火种,用IDE可谓进入了蒸汽时代。 十年前,由于技术所限,IDE还是奢侈品。而十年之后的今天,界面易用、功能强大、速度飞快的IDE已经无法不成为人们热衷的话题,套用经济学术语,人们渴望的不仅仅是一个传统的IDE,而是一种边际效应递增的开发工具更多的可用资源、更高的开发效率、更合理的开发方法. Eclipse是软件开发者的铁匠铺,炼炉、铁砧以及锤子,一应俱全。就像铁匠用已有的工具打造钳子等新工具一样,你还可以用Eclipse开发Eclipse
3、的插件来扩展其功能。得益于在Java社团中极高的知名度以及开源的本质,很多个人或者厂商提供了许多工具来扩展Eclipse,比如开发J2EE、UML建模等插件,很少有找不到相应功能的插件。此外,大多数工具都是免费的。,IDE三巨头,老大哥:Jbuilder(公元1997年) -我不做大哥好多年 (T_T) JBuilder是第一个被广泛使用的Java IDE,时至今日已经走过了10多个年头.它也曾经赢得了无数的奖项TopProduct,Readers Choice,Best Product,Jolt Award,以及著名的PC MAGAZINE EDITORS CHOICE等等,以至于Borla
4、nd再宣布JBuilder获得某某奖项时,程序员们都已经习以为常了。但是由于开源软件在最近几年突然兴起, JBuilder逐渐失去了自己的王者地位,这几乎出于所有人的预料.,既生瑜,何生亮?,新生代:netbeans eclipse (公元2000年) 虽然Java是Sun做的,但Java IDE却从来没Sun的份。尽管Sun已经有一些成功的产品.可Sun不会这么永远不甘寂寞。经过多年的努力,Sun终于推出了自已的新的Java IDE:NetBeans。在NetBeans刚推出不久,由于NetBeans性能和功能上的原因,一直也没象Eclipse那么出名。不过在2006年后,Sun接连推出了N
5、etBeans5.5 NetBeans6.0,这两个版本不仅功能强大,而且性能得到了很大的提高。同时和Eclipse一样,也是免费开源的。,日蚀来了!,早在2000年,为了对抗微软越来越强大的垄断地位,IBM表示将投入10亿美元开发Linux产品,包括PC、笔记本电脑、服务器和大型计算机。在一系列的举措中,影响最深远的也许就是Eclipse了。 Eclipse的前身是IBM的Visual Age for Java(简称VA4J)。在2001年6月,IBM宣布捐赠价值4000万美元的软件工具作为公共财产,并成立一个针对开发人员所设置的开放源代码机构。这个新成立的机构就是Eclipse,它提供部分
6、IBM的软件和工具程序,以供程序开发人员撰写电子商务与Web服务的应用。机构成员包括了开放源代码的主力厂商Red Hat、Suse,以及Merant、QSSL和Rational。 2003年,Eclipse开始了它的传奇生涯。经过短短2年多的发展,Eclipse从一个小屁孩变成了深受程序员欢迎的Java开发环境;2004年,Eclipse 3.0 正式发布,真正成为一个完美的、可扩展的开发环境;2005年发布的Eclipse 3.1 版本,30天内下载量居然达到100万之巨.Eclipse3.3有60多个开源项目,这其中包括涵盖企业应用开发、嵌入和设备应用开发、富客户端平台、富互联网应用、应用
7、框架、应用生命周期管理以及面向服务架构等.,IBM的智慧,Eclipse计划的出现,显示出IBM致力于开放源代码软件的决心。同时也显示出,IBM深知如果要商业软件开发商写出开放源代码的、自由的应用软件,就必须让商业软件厂商采用开放源代码的软件开发工具,这样才有可能成功打入主要企业团体。说服大型企业的软件开发人员和专门为大型企业撰写软件的开发商,使用开放源代码的软件开发工具是非常关键的一步。要达到这样的目的,就要有一套强壮的、功能完备的、高度集成的企业级开放源代码软件开发工具。 Eclipse软件可以在多平台下共同使用,同样的代码不加修改即可在多个操作系统下顺利运行。这样,IBM实际上拥有了全部
8、的开放源代码程序员为它服务。同时,也促进了开源事业的发展,这确确实实是商业软件公司在策略上的一次进步。,它是啥,核 Eclipse的基础是Eclipse平台(Eclipse Platform),提供软件开发工具集成的服务,而各种开发工具,包括JDT和PDE,都是用插件的形式提供的。插件设计使得Eclipse具有开放式可扩充的结构。比如,你想开发C/C+程序,装一个C开发工具(C Development Toolkit,简称CDT)插件代替JDT即可。同理,通过开发相应插件,Eclipse也可以用来开发微软的C#程序。Eclipse设计的优美之处在于,除了小部分运行的核心,其他都是插件。 通过插
9、件机制,Eclipse体现了一种主观能动的态度:它提供给你一个开放的平台、一个平等参与的机会,以及一些需要遵守的总体规则,然后你尽可快意恩仇,以出人意料但又令人拍案叫绝的方式来使用Eclipse。如果你有新的需要而Eclipse没有满足,自己动手做个插件吧,不但丰衣足食,对整个Eclipse社群也是直接的贡献。,为啥用它,兼容性 集成了不同软件开发工具产品,用户可以通过相同的接口使用不同的开发工具,可以根据开发者自身的具体情形定制自身需要的开发工具,对各种开发工具的整合具有很好的兼容性 免费的午餐 馅饼和陷阱 支持多平台 几乎支持当前所有主流平台,包括Windows |Linux| Solar
10、is |HP-UX等,大大降低了 开发跨平台软件的难度,同时版本的更新比较迅速. 各方面表现优异,综合实力强,Eclipse项目,Eclipse 项目 该项目是一个健壮、功能丰富、商用品质的业界软件开发平台,集成了相当多的工具,它包含3 个子项目:Platform、JDT 和PDE。 Eclipse 工具项目 该项目包含相当多的开源和非开源的工具,用于支持Eclipse 平台,这个项目的存在可以协调各方开发人员共同开发某些功能的插件,避免不必要的重复劳动,以及确保工具之间可以良好的集成。在这个项目里包括:CDT, EMF, GEF, VE, UML2 Eclipse 技术项目 该项目的任务是为
11、那些开源的开发人员、学者等提供一个参与到Eclipse 发展进程中的渠道。在这个项目里包括:ECF, CME, AJDT, eRCP, GMF, GMT, VTP, PTP, Pollinate, Mylar, MDDi,Lepido, Equinox, Higgins Eclipse WEB工具平台项目(WTP) 该项目扩展了 Eclipse 平台,即提供了开发 J2EE Web 应用的工具。开始主要关注基于标准的 Web 工具和 Java 运行时环境。在这个项目里包括:WST, JST, JSF,Eclipse项目,Test and Performance Tools Platform(T
12、PTP) 该项目提供了一个开放式的开发平台,以便为在整个开发生命周期中所使用的软件测试和性能工具提供有关框架和服务,进而达到支持从独立式到高分布式、从嵌入式到企业级在内的所有计算系统的目的。 Business Intelligence and Reporting Tools(BIRT) 该项目为Eclipse 平台提供了企业智能和报表工具。目前由著名的报表厂商Actuate维护。该项目里包括:Monitoring Tools, Tracing and Profiling Tools, Testing Tools Data Tools Platform(DTP) 该项目为Eclipse 平台提供
13、一个全新的、对数据库技术提供各种功能的工具。 该项目里包括:SQL Development Tools, Model Base, Connectivity Device Software Development Platform(DSDP) 该项目提供一套通用平台能让设备软件研发业者更有效率的开发外挂软件,同时也能支持更多的操作系统与设备。目前该项目由Wind River 维护。 该项目里包括:Target Management, Device Debugging,平台体系结构,术语,JDT 用来编辑和调试Java源代码的Java开发工具箱(Java Development Toolkit,简
14、称JDT),功能相当于IDE,用来开发产品. PDE可以扩展Eclipse本身的插件开发环境(Plug-in Development Environment,简称PDE),好比Winamp等多媒体播放器的插件开发包,用来打造开发工具。 Platform-ontime平台运行库是内核,它在启动时检查已安装了哪些插件,并创建关于它们的注册表信息。为降低启动时间和资源使用,它在实际需要任何插件时才加载该插件。除了内核外,其他每样东西都是作为插件来实现的 Workbench工作台为 Eclipse 提供用户界面。它是使用标准窗口工具包(SWT)和一个更高级的API(JFace)来构建的;SWT 是 J
15、ava 的 Swing/AWT GUI API 的非标准替代者,JFace则建立在 SWT 基础上,提供用户界面组件。 Team团队支持组件负责提供版本控制和配置管理支持。它根据需要添加视图,以允许用户与所使用的任何版本控制系统(如果有的话)交互。大多数插件都不需要与团队支持组件交互,除非它们提供版本控制服务。 Help帮助组件具有与 Eclipse 平台本身相当的可扩展能力。与插件向 Eclipse 添加功能相同,帮助提供一个附加的导航结构,允许工具以 HTML 文件的形式添加文档。,Eclipse 内部框架,核心运行时的类型扩展机制 IAdaptable需要通用,做到开源,无数的功能会在平
16、台扩展,eclipse 怎样做到未卜先知这一点?大量的设计模式少不了,查看eclipse 代码,你会觉得像是在看设计模式百科全书,让我们来体验一下eclipse 中设计模式的神奇吧,想想我们的平台能做到吗?IAdaptable 这个接口从命名去看是提供适配,其实早期的代码它的名字翻译成中文是扩展,eclipse 在不知道将会被怎样扩展的情况下使用了适配器工厂模式。以下只做简单介绍,实现,1某个类希望提供新的接口,但又不希望将其暴露在API 中,在这种情况下,IAdaptable 接口 中的方法getAdaptor()方法将由本类实现。(希望支持新的接口,而又不想把已经发布的API 造 成影响,
17、这种机制很有用) 2外界要求某个类提供新的服务,这种情况下不需要修改现有类的代码,getAdaptor()由一个 工厂提供。 创建适配器工厂(IAdapterFactory),注册到适配器管理器(IAdapterManager), 代码如下:IadapterFactory factory = new AdapterFactory(); IadapterManager manager = Platform.getAdapterManager(); Manager.registerAdapters(factory,Ifile.class); 适配对象需要实现platformobject public Object getAdapter(Class adapter) return InternalPlatform.getDefault().getAdapterManager().getAdapter(this, adapter); 若
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 提升服务品质管理办法
- 搜查措施使用管理办法
- 支付管理办法实施细则
- 支部活动费用管理办法
- 收费大型水库管理办法
- 放射卫生监护管理办法
- 政务大厅资金管理办法
- 新津共享农庄管理办法
- 新进公务考核管理办法
- 桂林电动车暂行管理办法
- 2025-2030中国气象服务行业市场前景趋势及竞争格局与投资研究报告
- 2025年心理咨询师职业伦理心得体会
- 《人工智能通识基础》全套教学课件
- A3报告解析课件
- 2024年煤矿安全规程(修订)
- 外研版六年级上册英语全册教学课件
- 广西壮族自治区南宁市2024-2025学年九年级上学期期末道德与法治试题(含答案)
- 企业迎检工作要点
- 2025年度汽车维修配件股份合作协议4篇
- 2022年河北省特种设备作业安全管理人员证考试题库(含答案)
- DB3301T 0378-2022 城市照明质量评价规范
评论
0/150
提交评论