Why Eclipse Jolts?

原创 2004年03月29日 10:33:00
(透明思考:http://gigix.blogdriver.com
 
十年之前,IDE都是一个奢侈品;十年之后,易用的界面、强大的功能、飞快的速度已经不再能够触动Jolt奖评委们的眼球。现在的IDE应该带给人们一些更多的东西——更多的边际价值,这是JBuilder和Visual Studio们逐渐淡出Jolt视野的原因:它们提供的东西仍然很棒,但是已经不足以令人震撼。
 
Eclipse首先是一个功能强大的IDE。单就IDE(准确说,JDT)而言,它与JBuilder算是各擅胜场。在某些方面(例如对JSP和EJB的支持),JDT本身不如JBuilder,所以很多人对Eclipse持怀疑的态度。
 
Martin Fowler说软件开发的两种态度(http://martinfowler.com/bliki/SoftwareDevelopmentAttitude.html)。大多数IDE选择了Directing Attitude,也就是说,在一个all-in-one的环境里提供用户需要的一切功能。如果你有新的需要,请告诉Borland,我们会考虑在下一个版本中加上一个feature——当然,也有可能不睬你,因为你的需要太偏门。但Eclipse选择了Enabling Attitude:它提供你一个开放的平台、一个平等参与的机会,以及一些需要遵守的总体规则,然后你可以尽情挥洒自己的才情,以Eclipse开发者们都想不到的方式来使用Eclipse。如果你有新的需要,不用客气,自己做个plug-in好了,那将是对整个Eclipse社群的贡献。
 
Eclipse每一部分的规划和设计都遵循三个重要原则:
  1. 邀请法则(Invitation Rule):只要可能,尽量邀请别人在你作品的基础上继续作出贡献。
  2. 公平竞赛法则(Fair Play Rule):对于一项功能,所有使用者遵守同一套规则,包括这功能的作者本人。
  3. 整合法则(Integration Rule):新的功能应该尽量与既有环境整合,提供统一的用户体验,而不要显得格格不入。

这三条法则保证整个Eclipse平台以一种“自由城邦”的方式生长,并且始终提供熟悉而一致的用户体验。实际上,大多数Eclipse的抱怨者仅仅是没有充分利用其他人的贡献。譬如JSP和EJB,Lomboz(http://sourceforge.net/projects/lomboz)已经提供了很好的支持。我甚至曾经找到过一个用于可视化开发JSR-168兼容的portlet的plug-in,相信这是其他任何一款IDE都不可能提供的。这是只有在Open Source社群才会出现的奇景。

另外,Eclipse的“微核心+插件”机制实际上为开发者提供了很多的可能性,唯一的局限只是你的想象力。譬如说,可以把整个Eclipse workbench作为desktop application的GUI基础,在上面开发自己的业务功能。甚至于,如果你不喜欢SWT,可以把Eclipse作为一个组件容器,把workspace作为资源容器,从这里开始做自己的GUI。

Enabling Attitude需要使用者具有相当的主观能动性——Eclipse提供你基本的功能和扩展的手段,你需要发挥自己的想象力和技术,与全世界的社群协作,把Eclipse变成你所喜欢的样子。如果你仅仅想要一个IDE,如果你不愿意在这里动脑筋,如果你没兴趣在这个开放的环境中施展技艺,那么你不需要Enabling Attitude也不需要Eclipse,JBuilder或许是更好的选择。

Why Functional Programming Matters 函数式程序设计为什么至关重要

作者: John Hughes 原文地址:http://www.md.chalmers.se/~rjmh/Papers/whyfp.html 此论文作于1984年,作为查麦兹大学的备忘录流传了多...
  • whf727
  • whf727
  • 2014年12月15日 10:50
  • 1255

学习技术的三部曲:WHAT、HOW、WHY【转】

try { 代码3遍, 其意自见. 1. 不管懂不懂,照抄敲一遍。 2. 心中默念式敲一遍。 3. 完全不看自己敲一遍。(可以问人或自己google) ...
  • qq_34004585
  • qq_34004585
  • 2017年08月02日 12:00
  • 123

感想篇:7)知其然与知其所以然;Know- How与Know- Why;

本章目的:探究----知其然与知其所以然;Know- How与Know- Why; 100多年的汽车研发历史表明,企业只有开发过两代车以上才能逐步建立和完善Know-How体系。北汽从萨博获得的K...
  • zjc314
  • zjc314
  • 2017年01月24日 09:20
  • 532

SCSI技术介绍

SCSI技术 一、什么是SCSI? 2 二、超级比一比与各种接口的比较 3 三、你该选择SCSI吗? 7 四、哪些设备有SCSI接口 8 五、SCSI发展的3代 10 六、细说SCSI...
  • hs6662668
  • hs6662668
  • 2014年12月17日 09:38
  • 735

学习技术的三部曲:WHAT、HOW、WHY

下面是我今天写的一个Blog,转贴给大伙儿,希望论坛里的牛人多提批评意见。 最近几天有些网友在邮件里面问我关于学习的问题。有很多人觉得工作了几年,也学会了不少的类库、框架、甚至语言,但是感觉自己的能力...
  • zhaoyw2008
  • zhaoyw2008
  • 2013年07月05日 01:54
  • 2437

为什么要上大四???why

为什么要上大四呢?为了毕业证?还是什么...
  • u010469003
  • u010469003
  • 2014年09月01日 09:14
  • 2088

UVa 11107 - Life Forms (后缀数组 求出现K次的串 根据height分组)

UVA - 11107 Life Forms Time Limit: 6666MS   Memory Limit: Unknown   64bit IO Format:...
  • zhaosdfa
  • zhaosdfa
  • 2014年09月23日 10:21
  • 586

Git使用操作指南和GitHub

本文记录Git的使用操作,把散落的记忆整理到一起。并介绍GitHub的使用。
  • puma_dong
  • puma_dong
  • 2014年07月17日 22:18
  • 2194

软件工程知识点复习总结

软件工程
  • qq_36146165
  • qq_36146165
  • 2018年01月06日 14:18
  • 131

敏捷转型中why与how的总结

敏捷转型中why与how的总结
  • lu_yongchao
  • lu_yongchao
  • 2017年02月28日 22:26
  • 1381
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Why Eclipse Jolts?
举报原因:
原因补充:

(最多只允许输入30个字)