Aljoscha Rittner beantwortet Fragen aus der Community

Interaktiver IDE-Vergleich: Ergebnisse – NetBeans

In der abschließenden Runde unseres interaktiven IDE-Vergleichs zwischen Eclipse, NetBeans und IntelliJ IDEA stellt sich Aljoscha Rittner den Fragen aus der Community zur NetBeans-Entwicklungsumgebung. Gerade mit den Ankündigungen von Oracle zu ihrer IDE-Strategie nach der Sun-Übernahme hat sich hier viel brandaktuell Neues ergeben.

JAXenter: Andreas Korzinowski hatte zu dem einleitenden Interview mit Al

joscha Rittner folgenden Kommentar abgegeben:

Ich hoffe, dass die Sun-Übernahme nicht dazu führt, dass die Weiterentwicklung von Netbeans beeinträchtigt wird, sondern man auf der Seite von Oracle erkennt, welches Potenzial in diesem Framework vorhanden ist.

Aljoscha Rittner: NetBeans IDE und die NetBeans Platform werden auch unter Oracle weiterentwickelt. Der Middleware Chief Architect Ted Farell sieht die NetBeans IDE als strategisches Java-Entwicklungstool für alle von Sun bisher entwickelten Java-Stacks: JavaME, JavaSE, JavaEE und auch JavaFX. Zu JavaEE wird auch GlassFish beibehalten. Weiterhin bleibt die NetBeans IDE die Entwicklungsumgebung für dynamisch getypte VM-Sprachen (Scala, Groovy usw.) und Skriptsprachen (z.B. PHP).

Die Weiterentwicklung von NetBeans erfolgt nun unter der Regie von Oracle. Große Veränderungen bei den Entwicklungsteams ist nicht zu erwarten. Allerdings möchte Oracle eine stärkere Einbindung der Community erreichen.

JAXenter: Nils Grochtinger stellte folgende Frage:

Wie abhängig ist NetBeans eigentlich von Sun (bzw. jetzt Oracle)? Ist es nicht denkbar, NetBeans in eine „unabhängige“ (vendor neutral) Institution à la Eclipse Foundation zu überführen und damit das Schicksal einer so wertvollen IDE von den wirtschaftlichen Unwägsamkeiten zu entkoppeln?

Aljoscha Rittner: Die Abhängigkeit NetBeans von dem „Besitzer“, ehemals Sun – nun Oracle, führte schon seit jeher zu kontrovers geführten Debatten. Es kann nicht mal gesagt werden, ob eine Überführung in eine Foundation NetBeans tatsächlich voranbringen würde. Wenn man nur den Blick in die Vergangenheit richtet, hatte NetBeans keine Schwierigkeiten, im Wettbewerb zu bestehen. Ansonsten wären wir heute mit NetBeans nicht an dieser erfolgreichen Position.

Beide Formen der „Verwaltung“, Foundation oder Besitz, haben ihre Vor- und Nachteile. Bei einer Foundation besteht die Gefahr, dass zu viele Köche den Brei verderben. Im Gegensatz dazu bedeutet Oracle als einzige führende Kraft darauf hoffen zu müssen, dass der eine Koch ein 5-Sterne Koch sein wird.

Oracle möchte aber unbedingt eine stärkere Einbindung der Community. Um erfolgreich mit diesem Konzept zu sein, ist sowieso damit zu rechnen, dass es Bestrebungen gibt, die eng gekoppelten Entwicklungsstrukturen aufzubrechen. Auch wir Mitglieder des NetBeans Dream Team sind sehr dafür, dass in Zukunft nicht alles komplett in einer Hand liegt. Man schaut sich nur das Dilemma mit kenai.com an. Viele NetBeans Contributor Projekte müssen nun umziehen, weil Oracle den Dienst einstellen will. Solche „Einzelentscheidungen“ wollen wir natürlich in Zukunft etwas abgefedert haben.

Letztendlich erlauben die Lizenzen, unter denen die NetBeans-Entwicklung läuft, ohne Probleme jederzeit eine Abkoppelung, ohne von einer zentralen Entscheidung abhängig zu sein. Im Moment sehe ich aber keine Notwendigkeit für einen solchen Fork.

JAXenter: Thomas kommentierte:

Was hat NetBeans für MDSD/MDA Architekten bzw. Softwareentwickler, die modellgetrieben entwicklen, zu bieten? Eclipse hat das sehr ausgereifte EMF, welches für mich inzwischen *die* Killerapplikation darstellt.

Aljoscha Rittner: Mit der Akquisition von Sun durch Oracle und der Ausrichtung der Tools JDeveloper und NetBeans sehe ich im Moment keine hohe Motivation, MDSD/MDA in NetBeans auszubauen. JDeveloper hat entsprechende Tools, und diese werden höchstwahrscheinlich nicht nach NetBeans migriert. Das bedeutet aber keine generelle Absage, weil in anderen Bereichen tatsächlich Überlegungen existieren, Features nach NetBeans zu bringen (z.B. ADF Plug-ins für die JavaEE/JSF Module in NetBeans).

Vielleicht gibt es aber in Zukunft andere Möglichkeiten, dass NetBeans von dem hohen Potenzial durch MDSD/MDA profitieren kann. Mit einem hohen Tempo wird die OSGi-Integration in das Modul- und Plug-in-System vorangetrieben. Es ist also nicht mehr unwahrscheinlich, dass es in Zukunft einfacher werden wird, für NetBeans und Eclipse gemeinsam Plug-ins zu programmieren, ohne auf jeder Plattform von vorne anfangen zu müssen.

JAXenter: IntelliJ IDEA-User Armin fragt nach der Unterstützung für Groovy:

Mit meinem Interesse für Groovy bin ich schnell auf IDEA gestoßen und muss sagen, dass die Unterstützung für Groovy (und natürlich auch Java) echt sehr gelungen ist. Bei einem detaillierten Vergleich zwischen Eclipse 3.5, NetBeans 6.7.1 und IntelliJ IDEA 8.1.1 musste ich feststellen, dass IDEA im Moment die einzige IDE ist, mit der man vernünftig Groovy programmieren kann.

Daraus ergeben sich die Fragen: Wie wird Groovy derzeit von NetBeans unterstützt? Was ist diesbezüglich geplant? Wie sieht es für andere JVM-Sprachen aus, insbesondere Scala und Ruby?

Aljoscha Rittner: Wie Ted Farell schon ausgeführt hat, besteht ein massives Interesse daran, NetBeans als die IDE für dynamische Sprachen weiterzuentwickeln. Die Parser/Scanner-Architektur wird schon seit 6.0 umfangreich umgebaut, um das Implementieren von weiteren Java-VM- und Skript-Sprachen deutlich zu vereinfachen.

Das Scala-Plug-in wird kontinuierlich weiterentwickelt. Groovy + Grails läuft ohne Probleme, ist aber ausbaufähig und wird unter dem Aspekt der Fokussierung von Oracle sicherlich verbessert. Das Ruby-Plug-in erfährt inzwischen auch tägliche Commits. Ganz besonders soll JavaFX als VM-Sprache vorangetrieben werden. Im Skripting-Bereich ist die PHP-Unterstützung durch NetBeans führend und wird weiter ausgebaut.

Unabhängig davon erhalten alle Sprachen durch die Editor-Anpassungen deutliche Verbesserungen (Beispielsweise für 6.9 das neue Soft Word Wrap, Visible Whitespaces und Block Selection Tools).

JAXenter: Dominik Hofmann stellt zum Abschluss eine interessante übergreifende Frage:

Was steigert Ihrer Meinung und Erfahrung nach die Produktivität in einem Projektteam mehr? Wenn jeder Entwickler seine Lieblings-IDE verwendet, oder wenn es eine einheitliche IDE im Unternehmen oder Projekt gibt? Wären Sie bereit, auf die von Ihnen entwickelte IDE zu verzichten, um eine einheitliche IDE in einem Unternehmen/Projekt zu ermöglichen?

Aljoscha Rittner: Wenn man mich das vor fünf Jahren gefragt hätte, wäre die Antwort eindeutig gewesen: Das Projektteam hat eine IDE zu verwenden. Aber inzwischen ist die Aussage gar nicht mehr so klar zu treffen.

Wir sprechen ja von einer IDE, also einem Integrated Development Environment. An sich handelt es sich also um ein Rich-Client-Programm, welches alle Entwicklungsprozesse umfassend anbieten sollte. Dieses Ganzheitskonzept ist aber gar nicht mehr der primäre Fokus einer IDE. Inzwischen ist eine Entwicklungsumgebung mehr und mehr zu einer Management-Konsole von vielen Entwicklungstools geworden. Das fängt bei Build-Systemen an, die nur über die IDE angesteuert werden (z.B. Ant). Es geht weiter zu Version Control Systemen (Mercury, Subversion, Git), deren Vorhandensein auf einem entfernten Server ausgesprochen sinnvoll ist. Die IDE ist da nur noch der Client. Mehr und mehr wird auch in mittelgroßen Projektteams Continuous Integration (z.B. Hudson, Continuum) eingesetzt. Das führt dazu, dass es schon jetzt nicht mehr notwendig ist, Projektmitglieder auf eine Entwicklungsumgebung festzulegen. Die Projektvorgaben sind deutlich weniger abhängig von den unterstützten Fähigkeiten der IDE, als es vielleicht vor fünf Jahren war.

Meines Erachtens stellt sich da auch nicht mehr die Frage nach dem Verzicht auf eine bestimmte IDE, um in einem Projekt mitarbeiten zu können. Man nutzt die IDE, die am besten in die Build-, Test- und Versioning-Systeme passt.

JAXenter: Vielen Dank an Aljoscha Rittner für seine ausführlichen Antworten und natürlich auch an alle Kommentatoren für ihr reges Feedback!

Aljoscha Rittner ist Gesellschafter und Geschäftsführer der Sepix GmbH in Hann, Münden. Zu den Aufgaben der Sepix GmbH gehört die Entwicklung von CRM und Groupware Anwendungen für den Desktop Bereich. Aljoscha Rittner beschäftigt sich mit der professionellen Softwareentwicklung seit knapp 18 Jahren. Seine primäre Programmiersprache ist Java insbesondere für Desktopapplikationen basierend auf das GUI Toolkit Swing. Seit drei Jahren wird von ihm die NetBeans-Plattform als umfassendes Swing-Framework in der Softwareentwicklung eingesetzt. Im Oktober 2008 wurde Aljoscha Rittner in das NetBeans Dream Team berufen, wo er die Community als Trainer im NetBeans Platform Certified Training und Unternehmen beim Auf- und Umbau von NetBeans-Plattform-Anwendungen, sowie bei der Migration von Legacy-Anwendungen auf die NetBeans-Plattform unterstützt.
Geschrieben von
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.