Why Eclipse Jolts?

散文随笔 专栏收录该内容
43 篇文章 0 订阅
(透明思考: 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或许是更好的选择。

  • 0
    点赞
  • 2
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

打赏
文章很值,打赏犒劳作者一下
相关推荐
<p> <span style="font-size:14px;color:#337FE5;">【为什么学爬虫?】</span> </p> <p> <span style="font-size:14px;">       1、爬虫入手容易,但是深入较难,如何写出高效率的爬虫,如何写出灵活性高可扩展的爬虫都是一项技术活。另外在爬虫过程中,经常容易遇到被反爬虫,比如字体反爬、IP识别、验证码等,如何层层攻克难点拿到想要的数据,这门课程,你都能学到!</span> </p> <p> <span style="font-size:14px;">       2、如果是作为一个其他行业的开发者,比如app开发,web开发,学习爬虫能让你加强对技术的认知,能够开发出更加安全的软件和网站</span> </p> <p> <br /> </p> <span style="font-size:14px;color:#337FE5;">【课程设计】</span> <p class="ql-long-10663260"> <span> </span> </p> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 一个完整的爬虫程序,无论大小,总体来说可以分成三个步骤,分别是: </p> <ol> <li class="" style="font-size:11pt;color:#494949;"> 网络请求:模拟浏览器的行为从网上抓取数据。 </li> <li class="" style="font-size:11pt;color:#494949;"> 数据解析:将请求下来的数据进行过滤,提取我们想要的数据。 </li> <li class="" style="font-size:11pt;color:#494949;"> 数据存储:将提取到的数据存储到硬盘或者内存中。比如用mysql数据库或者redis等。 </li> </ol> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 那么本课程也是按照这几个步骤循序渐进的进行讲解,带领学生完整的掌握每个步骤的技术。另外,因为爬虫的多样性,在爬取的过程中可能会发生被反爬、效率低下等。因此我们又增加了两个章节用来提高爬虫程序的灵活性,分别是: </p> <ol> <li class="" style="font-size:11pt;color:#494949;"> 爬虫进阶:包括IP代理,多线程爬虫,图形验证码识别、JS加密解密、动态网页爬虫、字体反爬识别等。 </li> <li class="" style="font-size:11pt;color:#494949;"> Scrapy和分布式爬虫:Scrapy框架、Scrapy-redis组件、分布式爬虫等。 </li> </ol> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 通过爬虫进阶的知识点我们能应付大量的反爬网站,而Scrapy框架作为一个专业的爬虫框架,使用他可以快速提高我们编写爬虫程序的效率和速度。另外如果一台机器不能满足你的需求,我们可以用分布式爬虫让多台机器帮助你快速爬取数据。 </p> <p style="font-size:11pt;color:#494949;">   </p> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 从基础爬虫到商业化应用爬虫,本套课程满足您的所有需求! </p> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> <br /> </p> <p> <br /> </p> <p> <span style="font-size:14px;background-color:#FFFFFF;color:#337FE5;">【课程服务】</span> </p> <p> <span style="font-size:14px;">专属付费社群+定期答疑</span> </p> <p> <br /> </p> <p class="ql-long-24357476"> <span style="font-size:16px;"><br /> </span> </p> <p> <br /> </p> <p class="ql-long-24357476"> <span style="font-size:16px;"></span> </p>
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页

打赏

gigix

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值