下面是Omnicore公司为宣传他们的IDE产品X-develop而做的一个几款IDE比较的表格,从中我们可以看出很多有趣的东西来。
X-develop VS.net VS.net + Resharper IDEA Eclipse
Java 1.4 |
Yes |
No |
No |
Yes |
Yes |
Java 5.0 |
Yes |
No |
No |
Yes |
Yes |
JSP |
Yes |
No |
No |
Yes |
No2 |
C# 1.0 |
Yes |
Yes |
Yes |
No |
No |
C# 2.0 |
Yes |
Not yet1 |
Not yet1 |
No |
No |
J# 1.0 |
Yes |
Yes |
Yes3 |
No |
No |
J# 2.0 |
Yes |
Not yet1 |
Not yet1,3 |
No |
No |
Visual Basic .NET |
Yes |
Yes |
Yes3 |
No |
No |
Windows |
Yes |
Yes |
Yes |
Yes |
Yes |
Linux |
Yes |
No |
No |
Yes |
Yes |
Mac OS X |
Yes |
No |
No |
Yes |
Yes |
Java |
Yes |
No |
No |
Yes |
Yes |
Microsoft .NET |
Yes |
Yes |
Yes |
No |
No |
Mono |
Yes |
No |
No |
No |
No |
Multi-language core engine |
Yes |
No |
No |
No |
No |
On-the-fly error checking |
Yes |
Only for VB.net |
Only for C#, VB.net3 |
Only for Java, JSP |
Only for Java |
Project-wide on-the-fly checking / incremental compilation |
Yes |
Only for VB.net |
Only for VB.net3 |
No |
Only for Java |
Checking speed |
Fast |
Medium |
Poor |
Poor |
Medium |
Refactoring |
Yes |
Not yet1 |
Only for C# |
Yes |
Yes |
Cross-language refactoring |
Yes |
No |
No |
No |
No |
Organize imports/usings |
Yes |
No |
Only for C# |
Yes |
Yes |
Code generation |
Yes |
No |
Only for C# |
Yes |
Yes |
Goto class/symbol by name |
Yes |
Not yet1 |
Only for C# |
Yes |
Yes |
Find usages |
Yes |
Not yet1 |
Only for C# |
Yes |
Yes |
Go to overriding/overridden method |
Yes |
No |
Only for C# |
Yes |
Yes |
Unified version control system support |
Yes |
No |
No |
No |
No |
CVS support |
Yes |
No2 |
No2 |
Yes |
Yes |
Bitkeeper support |
Yes |
No2 |
No2 |
No |
No |
Perforce support |
Yes |
No2 |
No2 |
Yes |
No |
Subversion support |
Yes |
No2 |
No2 |
Yes1 |
No2 |
Visual SourceSafe support |
Yes |
Yes |
Yes3 |
Yes |
No2 |
On-the-fly diff display |
Yes |
No |
No |
Yes |
Yes |
On-the-fly annotation view |
Yes |
No |
No |
No |
No |
Java debugger with Step back |
Yes |
No |
No |
No |
No |
Conventional .NET debugger |
Yes |
Yes |
Yes3 |
No |
No |
JSP debugging |
Yes |
No |
No |
Yes |
No2 |
Experimental Mono debugger |
Yes |
No |
No |
No |
No |
Integrated GUI designer |
Yes |
Yes |
Yes3 |
Yes |
Yes |
AWT |
Yes |
No |
No |
Yes |
No |
Swing |
Yes |
No |
No |
Yes |
Yes |
Windows Forms |
Yes |
Yes |
Yes3 |
No |
No |
GTK# |
Yes |
No |
No |
No |
No |
JUnit support |
Yes |
No |
No |
Yes |
Yes |
NUnit support |
Yes |
No |
Not yet1 |
No |
No |
Teamsystem support |
Yes |
Not yet1 |
Not yet1 |
No |
No |
Compared versions: X-develop 1.2, VS.NET 2003/2005
1, Resharper 1.5, IDEA 5.0, Eclipse 3.1
1 available in a beta/preview version
2 supported by third-party plugin
3 does not add anything to VS.net functionality
首先,所有的功能在X-develop一列中的支持结果都是Yes。这也算是理所当然的事情,人家怎么可能搬起石头砸自己的脚~但是,我总是觉得假假的, 呵呵。X-develop主要标榜的是自己的多语言支持性和多平台支持性,所以把Language Support和Platform Support放在了最前面,而且极度突出了自己在这两方面的优势。看着Eclipse一列那么多的No,我忍不住笑了出来,虽然在表格最后面的附注里面 有说supported by third-party plugin,但这多少有点儿愚民的感觉。
在Code analysis & Code editor一组中,吸引我的是Checking speed,Eclipse 是Medium,其他VS.NET + Resharper和IDEA都被无情的打上了Poor。Version control support是最搞笑的一组,X-develop看上去有巨大的优势,但是我很怀疑它所额外支持的东西是否比较有用。GUI designer和Unit testing也没有什么出奇的地方,X-develop支持那么多是因为它支持多语言,这是很正常的,不支持才不正常。
最让我眼前一亮的是Debugging中的Java debugger with Step back!这个可真的是个好东西,而且我也从来没在其他IDE中发现过。它强大的地方在于,在debug的时候可以让程序倒退着运行,这对观察程序行为, 调试很复杂或tricky的bug是很有用的。
看过之后总体感觉下来,X-develop面向的用户是没有深入使用其他主流IDE的开发人员。我个人是不会因为这些比较而改变我的IDE使用习惯,但是 在debug的时候,如果真的有很难调试的bug,我也许会到X-develop下面用Step back试试。另外再提一下,X-develop是要钱的,而且我还没找到crak... :(