IntelliJ IDEA是一个相对较新的Java IDE。它是我所使用过的(我用过大部分Java开发环境)Java开发环境中最为有用的一个。高度优化的IntelliJ IDEA使普通任务变得相当容易。
通常不是较大的标签特性使一个产品真正有用。而是这些小的方面:里面的许多小的细节使整个包无缝集成及乐于使用。
下面是我真正喜爱Idea的一些理由。
1、感知语法词选择
反复使用Ctrl-w使所选表达式逐步增大直到选取整个文件。但是这一点听起来并不是很重要,它在与其它特性如“introduce variable”refactoring(“引入变量”重整)相结合使用时才真正好用。我可以把脱字符置于复杂表达式上,按Ctrl-w直到选取所需范围然后按Ctrl-Alt-v为表达式引入一个新的变量。如果我要替换这个表达式的其他事件Idea甚至也可以自动做到。
2、多种导航形式
在一个工程里,Idea有很多种方法用于转换。除鼠标之外所有的命令都可以通过键盘实现(这一点对于像我这样难以忍受不停地切换到鼠标的人来说绝对不错)。Ctrl-n可以通过键入类名查找一个类。Ctrl-shift-n可以查找文件。Ctrl-e得到最近编辑的文件,通过键入文件名或者鼠标键选择。命令不仅可以容易地在你的工程两个视图里导航并且使整合操作变得轻而易举。Alt-f1可以是你在任何一个其他视图里选择当前文件。工程导航地方法太多在这儿不能全部列举。所有命令没必要像观点一样都给出概念。
3、本地历史
开启本地历史,你源代码中的每一个改变(在tool和externally里)都被跟踪。这个特性救了我很多次所以我推荐它。不同的地方在一个绝对漂亮的差异查看器里高亮显示出来。
4、灵活的JUnit支持
单元测试可以独立运行。特殊的测试方法可以单独拉出来独立运行。Idea能够在一个包或者工程里自动运行所有测试而不需要手工启动一个麻烦的测试套件。在GUI运行器里的堆迹线上双击可以直接切换到源代码的相应行。就我个人认为我更喜欢文本运行器。它不但秀美而且速度更快功能更多。
5、设计优良的整合支持
Idea支持很多整合功能。更重要的使它们设计的好容易使用。有一些你会一直使用,也有一些几乎用不到。当你发现你需要他们时它们就成了一个大的时间节约器。
6、代码助手
在Idea里有一些真正强大的代码编写助手。在这里我只能介绍给你一点它的好处。一个比较好的例子是“委托方法”助手。它允许你在你的类里面为一个对象实例委托方法调用。它并不是你每天都使用的东西,但当你需要它的时候你就会发现自己节省了大量的时间。另一个例子是产生冗余代码和等价特性。你会发现这是一个自己经常使用的特性。其他一些代码助手特性为:产生Getters/Setters,产生构造器与“surround with…”(译者注:被什么保护)等特性。
7、灵活的代码重格式化
关于代码怎样重格式化的选择有许多。它可以为每一个工程单独设置,所以没必要担心自己是否必须支持不同的代码标准。重格式化一个文件或者一个完整的工程眨眼间就可以完成。
8、XML支持
Idea支持XML中的代码实现。如果没有定义图表或者DTD(文件类型定义)Idea将基于文件中已经包含的来实现。否则可能基于为文件定义的图表或者DTD来实现。Idea同时还会校正XML。