Is Oracle JDeveloper Better than NetBeans?
I am looking at a declarative approach in the latest version of Oracle JDeveloper (11g). One reason why I decided to do this is to see how it compares with NetBeans (at least with version 6.7.1 that had SOA/JBI/BPEL and UML modules working) especially in light of missing modules in NetBeans 6.8. I will leave the discussion open source vs. proprietary code out of this comparison. Here are my first impressions.
First of all, I feel like I am comparing a dog with an elephant. In terms of the size of the installation bundle, NetBeans is 232MB, JDeveloper is 969MB. But this is does not tell the full story. The JDeveloper bundle includes WebLogic Server, the NetBeans bundle includes Sun GlassFish and Apache Tomcat. Leaving bundled servers aside, JDeveloper is noticeably heavier in terms of system resource requirements (I have a separate comment related to this).
With the Oracle Fusion stack support JDeveloper requires more time to get used to it. I wish JDeveloper architects spent more on usability.
JDeveloper supports only WebLogic 10.3, JBoss 5.x, Tomcat 6.x, and WebSphere Server 7.x. I have no idea what stopped Oracle to support Sun GlassFish. On the other hand NetBeans supports GlassFish (all existing version), JBoss, WebLogic, Sailfin, Sun Java Application Server 8.2, Tomcat (v. 5.0, 5.5, 6.0).
JDeveloper has more BPEL features, but is more difficult to use. One of very interesting features is supporting human tasks to the point that JDeveloper allows to build a UI form for a user to perform the task. Sun was offering a similar functionality only via their sales team. At the same time the FTP binding component in OpenESB (and available in NetBeans) seemed more robust than the one in JDeveloper.
UML. I like so far UML modeling in JDeveloper. It does a very good job keeping the model and code in sync. May be it makes sense that Sun dropped support for the UML module. The bad news is you cannot convert your NetBeans UML models into JDeveloper UML models.
One more thing disappointed me in JDeveloper – the number of supported databases in terms of database object creation and synchronization. It supports only Oracle, DB2, Oracle Lite, MySQL, SQLServer.
Overall, I feel that if Oracle extends JDeveloper taking the best from NetBeans, it can shutter the dominance of Eclipse. But Oracle also may have to make it less restrictive and more open.