Eclipse还是IDEA?!

1,451 阅读6分钟

起因

最近看了一篇算是技术分享的文章吧,文章作者讲到了Eclipse和IDEA各种优缺点。于是决定,我也尝试的去试了试IDEA这个开发工具。到这里,已经很明显了,我之前一直都是把Eclipse作为开发工具。

回忆

作为13年的老程序员了,记得当年起初学习Java开发的时候,以及一开始工作的时候,并不是使用的Eclipse,而是用的一款叫JBuilder的开发工具。在那个年代我已经觉得它非常好使了,熟悉Java的人知道,之所以Java开始火是来源于它的其中一个技术(当然火的原因有很多),它能在那个年代没有各种酷炫甚至可以称作裸奔(那个年代CSS都不是很强大)的HTML页面中嵌入一个Applet小程序,这个Applet小程序可以在HTML页面中嵌入一些炫酷的动画,甚至可以实现一些3D效果。有的人估计笑了,现在能在HTML页面中实现各种炫酷功能的技术太多了,没事如果你有兴趣你可以去追溯一下那个历史潮流下HTML页面设计给你带来的空前绝望。

解释

为什么提及Applet这个东西呢,我是想继续说一下Java其中的一个技术分支——Swing。什么是Swing?说个白话吧,就是用Java开发的窗口桌面级应用技术。在当年那个互联网时代,在Web应用并不火热的时代,C/S架构软件盛行的时代,Java语言必须有这么一个技术可以进行桌面级的应用开发。我估计现在的年轻程序员,并没有接触过Swing这个技术吧。对不起,有点扯远了,要是扯那个年代的软件开发?!那得说上好几十篇文章。

继续

回到JBuilder吧,在那个时代,之所以觉得它好用是因为它可以像NET平台开发桌面级程序那样,对Swing技术中的各种控件进行那种拖拽式开发。有的人不理解了, 其实还得追溯到那个软件开发时代,刚才提过了,那个时代C/S架构窗口桌面级的软件居多,开发C/S这种窗口桌面级应用的语言也很多,什么Delphi,PB,VB以及NET平台等,它们的开发工具都很好的支持窗口桌面级控件拖拽的开发模式。以至于到如今,NET平台还支持的非常好。自然Java语言开发工具也得有这种拖拽功能,这样JBuilder它就具备Java语言中Swing技术这种拖拽的功能。但是我想说的,Swing很难用,如果你是年轻的Java程序员,我想你可能不知道Swing这个技术,也许你只是听说过。所以当您将Java语言用于B/S架构的Web开发的时候,Eclipse上位了。那个时候Eclipse并不是刚出来(那个时候还有叫“NetBeans”和“MyEclipse”的开发工具,他们与“Eclipse”号称三足鼎立,当然现在好像也有,用的人少而已,也许是我的圈子的问题,有兴趣自己去搜搜看),它早就有了,只不过随着时间的推移,大部分JBuilder使用者转向了Eclipse。为什么?JBuilder收费的(有人说破解啊,大天朝那个时代破解并不多),Eclipse免费开源,别的理由就不多说了。

体会

还是回到文章初衷吧,IDEA工具也下载好了,运行的时候各种懵圈点击开启了IDEA之旅。收费?!不存在,现在的大天朝分分钟就给你XX了(心照不宣了,如果可以,您还是购买正版)。

应用

开始使用IDEA创建一个Web项目吧,然后各种懵圈各种的不适应,然后百度一通,各种调试,各种不解,终于可以运行了。这期间我一直在想,这工具好使?!是那么回事吗?这都是一套什么啊?!各种怨言四起,各种使用上的不舒服。要不再创建一个简单的Java项目试试吧,emmm?!一开始我确实有点厌烦,我也不是不爱学习新知识,只是感觉是各种懵圈。没办法,只能一个一个问题搜吧。随着时间的推移吧,也许是这13年的开发生涯也不是白混的,感觉IDEA工具也就那么回事,有人说它好用,我觉得也就是仁者见仁智者见智的事了,看看搁谁身上去讨论这个事了。只是IDEA有点颠覆了我之前对Eclipse上认知,经过几天的研究,确实比Eclipse要更好,我觉得它的好处并不是多了什么功能,IDEA关键点在于它在细节上更为更尽人意吧,虽然我更喜欢用Eclipse。

认知

我觉得Eclipse和IDEA最大区别在于工作空间概念的转变,并且在IDEA当中,Project和Module是作为两个不同的概念,对项目结构有了重大意义,这可能就是许多IDEA初学者觉得困扰的地方。简单的总结一下吧:

Eclipse IntelliJ IDEA
Workspace Project
Project Module
JRE SDK
Classpath variable Path variable

以前的Eclipse中确实没有所谓模块的概念,IDEA中取消了工作空间的概念,强化了Project这个概念。对于每一个IDEA的项目工程(Project)而言,它的每一个子模块(Module)都可以使用独立的JDK和MAVEN配置。

结语

如果你让我说Eclipse和IDEA哪个好用?!我不能妄下结论,我觉得应该按照习惯吧。作为一个用了十多年Eclipse的开发者来说,那当然就是Eclipse好使了,起码各种操作和各种配置虽然做不到全部精通,但最起码我可以稍微的达到“了如指掌”,不至于搜的很狼狈。那如果你起初就是从IDEA作为开发工具,你会很坚定的说IDEA好用。所以说这是一个仁者见仁智者见智的事。

最后

写到这里,回顾一下前面所写的内容,也许算是回忆,也许算是脱变,在这个互联网发达的社会中,作为一个计算机互联网开发者,工具只是过客而已,往往大家需要的是适合互联网世界中各种各样产品,开发工具只是搬运者而已。