Thursday, July 31, 2008

A novice Scala programmer: Eclipse vs. IntelliJ IDEA vs. Netbeans.

1. Eclipse vs. IntelliJ IDEA vs. Netbeans. Installation.
2. Eclipse vs. IntelliJ IDEA vs. Netbeans. Creating and running Scala project with Eclipse.
3. Eclipse vs. IntelliJ IDEA vs. Netbeans. Creating and running Scala project with IntelliJ IDEA.
4. Eclipse vs. IntelliJ IDEA vs. Netbeans. Creating and running Scala project with Netbeans.
5. A novice Scala programmer: Eclipse vs. IntelliJ IDEA vs. Netbeans.

In this final post here's a short summary for Eclipse vs. IntelliJ IDEA vs. Netbeans:

Eclipse plugin for Scala.

Positive: Works. Is free. Customizable environment. Has predefined templates for Scala Project, Scala object, Scala Class, Scala file. Good debugger.

Negative: A very little documentation. Does not appear to be actively developed. There are news groups and Artima forum, but there is not too much live in there. No hotline support. Does not automatically create a project folder, so you need to remember to create it. Inconvenient manual process of setting run-time configuration and running. You need to manually switch from "Debug perspective" to "Scala perspective" after you finished debugging (although it's just one mouse click.)



Intellij IDEA plugin for Scala.

Positive: Works. Customizable environment. Has predefined templates for Scala Project and file. Good debugger. Being developed very actively. Excellent, friendly hotline support on Scala plugin forum. Sokoban plugin works fine with "Diana EAP" beta of Intellij IDEA


Negative: Intellij IDEA is quite expensive, unless you qualify for a free version as established Open Source developer. "Diana EAP" beta of Intellij IDEA is very fragile. Installing any plugin could ruin it. But Scala plugin does not work under stable editions of Intellij IDEA. No predefined templates for Scala object, Scala Class, although user can create them. Almost no Scala plugin documentation. Does not automatically create a project folder, so you need to remember to create it. Inconvenient manual process of setting run-time configuration and running.



Netbeans plugin for Scala.

Positive: Works. Is free. Very easy to use, really automated. Customizable environment. Has predefined templates for everything. Being developed very actively.Good debugger.

Negative: Almost no Scala plugin documentation, but it's so easy to use, I didn't have any problem. I didn't find any live people to discuss Netbeans Scala plugin or Scala itself, although you can post bugs.


I would probably choose Netbeans by Scala development, but there is one thing which might over weigh its maturity and ease of use: an excellent user-friendly and responsive Scala Plugin forum on IntelliJ IDEA. It feels like a team where you can get immediate help not only with installation issues, but also discuss advanced Scala features and patterns.