我听说有人选择了其中一种方式,并对其中一种方式发誓。
作为一个Eclipse的忠实粉丝,但没有时间尝试IntelliJ,我很有兴趣从“前Eclipse用户”IntelliJ用户那里听到一些用IntelliJ可以做而用Eclipse不能做的具体事情。
注意:这不是一个主观的问题,也不意味着变成一场IDE圣战。请为任何煽动性的答案投票。
我听说有人选择了其中一种方式,并对其中一种方式发誓。
作为一个Eclipse的忠实粉丝,但没有时间尝试IntelliJ,我很有兴趣从“前Eclipse用户”IntelliJ用户那里听到一些用IntelliJ可以做而用Eclipse不能做的具体事情。
注意:这不是一个主观的问题,也不意味着变成一场IDE圣战。请为任何煽动性的答案投票。
当前回答
其他一些事情:
propagate parameters/exceptions when changing method signature, very handy for updating methods deep inside the call stack SQL code validation in the strings passed as arguments to jdbc calls (and the whole newly bundled language injection stuff) implemented in/overwritten in icons for interfaces & classes (and their methods) and the smart implementation navigation (Ctrl+Alt+Click or Ctrl+Alt+B) linking between the EJB 2.1 interfaces and bean classes (including refactoring support); old one, but still immensely valuable when working on older projects
其他回答
可能不是能做/不能做的问题,而是如何做的问题。
例如,两者都有编辑器围绕码头面板的项目,类路径,输出,结构等。但在Idea中,当我开始输入所有这些自动折叠时让我专注于代码本身;在eclipse中,所有这些面板都保持打开,使我的编辑器区域非常小,大约是总可视区域的1/5。所以我必须抓住鼠标,点击来最小化这些面板。在日食中,整天这样做是一种非常令人沮丧的经历。
The exact opposite thing happens with the view output window. In Idea running a program brings the output window/panel to see the output of the program even if it was perviously minimized. In eclipse I have to grab my mouse again and look for the output tab and click it to view my program output, because the output window/panel is just another one, like all the rest of the windows, but in Idea it is treated in a special way: "If the user want to run his program, is very likely he wants to see the output of that program!" It seems so natural when I write it, but eclipse fails in this basic user interface concept.
可能在eclipse中有一个快捷方式(编辑时自动隐藏输出窗口,运行程序时自动显示),但由于其他几十个功能,快捷方式必须在论坛,在线帮助等中寻找,而在Idea中则更“自然”一些。
这可以重复几乎所有的功能,自动完成,自动换行,快速文档查看,一切。我认为在Idea中的用户体验要比在eclipse中的用户体验愉快得多。那么,“快乐地发展”这句格言就成为现实了。
Eclipse可以处理更快的大型项目(+300个jar和+4000个类),我认为IntelliJ Idea 8正在处理这个问题。
当然,所有这些都是主观的。我们如何衡量用户体验?
我在IntelliJ中一直使用的东西是在我输入时重构。我用两种ide重写了打印输出的类(最初是在eclipse中编写的),用IntelliJ编写相同的类比用eclipse少了大约40%的按键/鼠标点击。
除非Eclipse对不完整的代码段支持同样多的重构,否则我不会使用它。
以下是IntelliJ 8.0/8.1的特性列表[http://www.jetbrains.com/idea/features/index.html]
首先,我喜欢intellij。它至少有100个eclipse所缺乏的特性。在重构、重命名、移动和其他已经提到过的东西时,我所说的可靠性和智能程度是任何夸张都无法形容的。
但是,有一件事intellij不允许,而eclipse做到了。它不允许在同一个vm下同时运行多个项目。
当你有独立的前端、中间、核心、代理项目时…等等,它们都必须相互交互,你不能同时快速修改和调试。我目前处理这个问题的唯一方法是使用ant脚本在依赖的项目中部署和更新jar,或者使用maven。
Eclipse允许在一个ide vm实例下调试多个项目。
我最近发现IntelliJ IDEA与Eclipse相比至少有两个优点。
如果试图在JSP代码编辑器中使用代码格式化,JSP脚本就会出错。Eclipse变得有点疯狂,它到处发布随机的代码片段。IDEA表现得很好。
另一件事是在JBoss服务器上部署应用程序的速度。IntelliJ正在替换JBoss tmp文件夹中的应用程序,因此重新部署非常快。Eclipse WTP正在替换deploy文件夹中的应用程序,而后者的持续时间要长得多。
结构搜索和替换。
例如,搜索如下内容:
System.out.println($string$ + $expr$);
其中$string$是一个文字,$expr$是my.package.and.Class类型的表达式,然后替换为:
$expr$.inspect($string$);