我听说有人选择了其中一种方式,并对其中一种方式发誓。
作为一个Eclipse的忠实粉丝,但没有时间尝试IntelliJ,我很有兴趣从“前Eclipse用户”IntelliJ用户那里听到一些用IntelliJ可以做而用Eclipse不能做的具体事情。
注意:这不是一个主观的问题,也不意味着变成一场IDE圣战。请为任何煽动性的答案投票。
我听说有人选择了其中一种方式,并对其中一种方式发誓。
作为一个Eclipse的忠实粉丝,但没有时间尝试IntelliJ,我很有兴趣从“前Eclipse用户”IntelliJ用户那里听到一些用IntelliJ可以做而用Eclipse不能做的具体事情。
注意:这不是一个主观的问题,也不意味着变成一场IDE圣战。请为任何煽动性的答案投票。
当前回答
结构搜索和替换。
例如,搜索如下内容:
System.out.println($string$ + $expr$);
其中$string$是一个文字,$expr$是my.package.and.Class类型的表达式,然后替换为:
$expr$.inspect($string$);
其他回答
我经常使用的一件事是设置断点,然后控制它的功能。(在我的上一份工作中,大多数人都使用Eclipse……我记得我很惊讶,没有人能在Eclipse中找到如何做到这一点。)
例如,可以让断点实际上不停止,而只是将消息记录到控制台。这意味着,我不必用“System.out.println(…)”乱写代码,然后重新编译。
我最近发现IntelliJ IDEA与Eclipse相比至少有两个优点。
如果试图在JSP代码编辑器中使用代码格式化,JSP脚本就会出错。Eclipse变得有点疯狂,它到处发布随机的代码片段。IDEA表现得很好。
另一件事是在JBoss服务器上部署应用程序的速度。IntelliJ正在替换JBoss tmp文件夹中的应用程序,因此重新部署非常快。Eclipse WTP正在替换deploy文件夹中的应用程序,而后者的持续时间要长得多。
有很多事情是idea用更简单的方法解决的,或者没有等价的方法:
Autocomplete actions: Doing ctrl+shift+a you can call any idea action from the keyboard without remembering its key combination... Think about gnome-do or launchy in windows, and you've got the idea! Also, this feature supports CamelCasing abbreviations ;) Shelf: Lets you keep easily some pieces of code apart, and then review them through the diff viewer. Local history: It's far better managed, and simpler. SVN annotations and history: simpler to inspect, and also you can easily see the history only for such a part of a whole source file. Autocomplete everywhere, such as the evaluate expression and breakpoint condition windows. Maven integration... much, much simpler, and well integrated. Refactors much closer to the hand, such as loops insertion, wrapping/casting, renaming, and add variables. Find much powerful and well organized. Even in big projects Much stable to work with several branches of a big project at the same time (as a former bugfixer of 1.5Gb by branch sources, and the need to working in them simultaneously, idea shown its rock-solid capabilities) Cleaner and simpler interface... And, simpler to use only with the keyboard, letting apart the need of using the mouse for lots of simple taks, saving you time and giving you more focus on the code... where it matters!
现在,作为开源的…Idea的用户群将呈指数级增长。
在IntelliJ中,您可以通过“最后编辑位置”跳过最后编辑位置的历史。Eclipse也有类似的特性,但是Eclipse只返回到编辑位置的一个级别。
拥有历史记录而不仅仅是Eclipse提供的一个级别是一个很好的生产力特性:它充当了一种自动书签的形式,因为您经常希望跳转回您进行更改的地方。我每天都要使用这个功能几次,当我被要求使用Eclipse来做某些事情时,我感到没有这个功能的痛苦。
可能不是能做/不能做的问题,而是如何做的问题。
例如,两者都有编辑器围绕码头面板的项目,类路径,输出,结构等。但在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正在处理这个问题。
当然,所有这些都是主观的。我们如何衡量用户体验?