CSC/ECE 517 Fall 2011/ch4 4d ls
CSC/ECE 517 Fall 2011/ch4 4d ls
Introduction
edit
edit
SECOND
A
B
C
THIRD
Basic Comparison
IDE | RadRails | Ruby Mine | IntelliJ IDEA | RDT Eclipse | Netbeans Ruby Support | TextMate |
---|---|---|---|---|---|---|
Developer | Aptana, Inc. | JetBrains | JetBrains | IBM Corp. | Oracle Corp. | MacroMates Ltd. |
Platform | cross-platform | cross-platform | cross-platform | cross-platform | cross-platform | Mac OS |
Latest Release Version(can be used) | Aptana Studio 3 | Ruby mine 3.2.4 | IntelliJ IDEA 10.5 | 24 Jul 2008 | NetBeans IDE 6.9.1 | TextMate 2 |
General Features Comparison
IDE | RadRails | Ruby Mine | IntelliJ IDEA | RDT Eclipse | Netbeans Ruby Support | TextMate |
---|---|---|---|---|---|---|
Keywords autocompletion | YES | YES | YES | YES | YES | YES |
Syntax highlighting | YES | YES | YES | YES | YES | YES |
Code formatting | YES | YES | YES | YES | YES | YES |
Error reporting | YES | YES | YES | YES | YES | YES |
Error correction suggestion | YES | YES | YES | YES | YES | YES |
Step-through debugging | YES | YES | YES | YES | YES | YES |
General autocompleting | YES | YES | NO | YES | YES | NO |
Auto-spell checking | YES | YES | NO | YES | YES | NO |
Code folding | YES | YES | YES | YES | YES | YES |
Coloring | YES | YES | YES | YES | YES | YES |
Refactoring Comparison
Refactoring is a disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior.
IDE | RadRails | Ruby Mine | IntelliJ IDEA | RDT Eclipse | Netbeans Ruby Support | TextMate |
---|---|---|---|---|---|---|
Encapsulate Field | YES | YES | NO | YES | NO | NO |
Type generalization | NO | NO | NO | YES | NO | NO |
Merge class parts in file | YES | NO | NO | YES | NO | NO |
Merge with external class parts | YES | NO | NO | YES | NO | NO |
Extract Method | YES | NO | NO | YES | NO | NO |
Split temporary variable | YES | NO | NO | YES | NO | NO |
Move Method | YES | NO | NO | YES | NO | NO |
Move Field | YES | NO | NO | YES | NO | NO |
Rename Method | YES | YES | YES | YES | YES | YES |
Pull Up (move to a superclass) | YES | NO | NO | YES | NO | NO |
Push Down (move to a subclass) | YES | NO | NO | YES | NO | NO |
Inline class | YES | NO | NO | YES | NO | NO |
Debugger Comparison
IDE | Debugger |
---|---|
RadRails | In the 3.0.4 Release (2011-08-15) , it has fixed and improved the problem: Unable to run Ruby debugger on Windows.
It can set breakpoints, inspect variables, control execution where the Radrails can help you with eliminating theses bugs. |
Ruby Mine | The debugger has advanced graphical debugger which can be customized, that means it is easy for people to set the view and select toolbar command, etc. It also has the features such as flexible breakpoints, Dedicated Watches View and Remote Debugging. These can be found in JetBrains website 15 |
IntelliJ IDEA | When doing debugging, it is easy to take snapshots of arbitrary threads and dump them to dedicated debugger for further investigation.
Also, IntelliJ IDEA provides you with the ability to specify how various objects are displayed in the debugger. In addition, it will save time when one wants to analyze complicated output of the debugger. |
RDT Eclipse | The debugger functionality in Eclipse plug-in version is integrated as part of Aptana Studio 3 16, which implement almost the same as what RadRials' |
Netbeans Ruby Support | It is all-convenient to set breakpoints, navigate the call stack and switch threads. What is more, debugging Ruby files that are not part of a Netbeans project is also handy. This IDE supports the Fast Ruby debugger 17, which also works with JRuby 18. |
TextMate | The main distinct difference is that the debugger is lightweight and faster than the previous ones. When using the debug functionality, you can have only one Ruby code line processed by the interpreter and the return value will be inserted inline.
It is easy to simply run a specified location in the code to check the value and invoke methods of objects. |
Version Control Comparison
IDE | Version Control Systems |
---|---|
RadRails | RadRails integrates with CVS, Git 19and SVN systems. It dose not integrate with Perfoce or with VCS 20 that use the Window SCC 21 interface convetion |
Ruby Mine | Ruby Mine integrates with CVS, Git, SVN, GitHub and Perforce. version_control 22 in jetbrains |
IntelliJ IDEA | IntelliJ IDEA integrates with CVS, Git, SVN and Perforce. |
RDT Eclipse | RDT Eclipse integrates with CVS, SVN, Git, Mercurial and Clearcase |
Netbeans Ruby Support | Netbeans integrates with CVS,SVN, Mercurial and Clearcase. It dose not integrates with Git. |
TextMate | TextMate integrates with CVS, SVN, Git. |
Conclusion
References
- [1]
- [2]
- [3]
- [4]
- [5]
- [6]
- [7]
- [8]
- [9]
- [10]
- [11]
- [12]
- [13]
- [14]
- [15]
- [16]
- [17]
- [18]
- [19]
- [20]
- [21]
- [22]