Java-IDE-Vergleich Seite 1 / 5 Java-IDEs im Vergleich 1. Getestete IDEs: Borland JBuilder 3 Professional Edition IBM Visual Age 3 Entry Edition Sun Forte 1.01 Community Edition Microsoft Visual J++ 6.0 Professional Edition 2. Beurteilung 2.1 IBM Visual Age 3 Entry Edition IBMs IDE verwaltet grundsätzlich keine .java oder .class Dateien, sondern arbeitet auf einer Datenbank, in der sowohl Quellcodes als auch die Binarys gehalten werden (Repository). Mittels eines recht komfortablen Browsers ist es so möglich, auch auf Klassen oder Packages zuzugreifen, die nicht zum aktuellen Projekt gehören. Ein weiterer Vorteil dieses Verfahrens sind die erweiterten Suchmöglichkeiten z.B. nach bestimmten Methoden über mehrere Projekte hinweg. Auf Wunsch können beliebige Pakete, Klassen oder Quellen im herkömmlichen Format auf die Platte ausgelagert werden. Eine Einlagerung (auch nachdem z.B. Quellen extern modifiziert wurden) ist ebenfalls problemlos möglich. Im GUI-Editor können nicht nur Oberflächen designt werden, sondern es werden auch die (z.B. zu einem Button) gehörigen Verknüpfungen zu bestimmten Methoden im Quellcode visuell angezeigt und auf Wunsch zum editieren angeboten. Leider werden Änderungen in den Quellen nicht direkt im GUI-Editor berücksichtigt … ein manuelles Reengineering ist nötig, funktioniert aber manchmal nicht korrekt (z.B. wenn keine bekannten Standard-GUIElemente verwendet werden, sondern eigene, abgeleitete Kreationen …). Sollte das manuelle Übernehmen der Änderungen einmal "vergessen" und im GUI-Editor noch weitere Erstellt von Jörg S. Stand 01/08/00 Java-IDE-Vergleich Seite 2 / 5 Änderungen vorgenommen werden, werden die manuell eingefügten Zeilen sogar aus dem Quellcode entfernt! Hier ist sehr viel Aufmerksamkeit vom Benutzer gefordert. Eine Benutzer/Versionsverwaltung ist in dieser IDE schon enthalten. Es kann aber auch eine externe Lösung (PVCS, …) verwendet werden. Das zugrundeliegende JDK 1.2 kann nicht verändert werden. Ein Umstieg auf neure / ältere JDK-Versionen ist also nicht möglich. Die Dokumentation ist in Form eines Hilfe-Systems integriert, außerdem existieren diverse Newsgroups. 2.2 Sun Forte 1.01 Community Edition Forte von Sun (einigen vielleicht auch unter dem OpenSource-Projekt Netbeans bekannt …) basiert auf einem separat installiertem JDK (also auf einem beliebigen!). Unangenehm fallen sofort die immens hohen Systemanforderungen auf (mind. 128 MB Arbeitsspeicher, Prozessor jenseits der 300 mHz erwünscht). Tatsächlich bauen sich einige Fenster recht langsam auf, Wizards brauchen ewig, bis sie zu sehen sind. Besonders schwer wiegt dieser Nachteil, da Forte den Quelltext mit geschützten Codeblöcken versieht, in denen keine manuellen Änderungen vorgenommen werden können. Den darin enthaltenen Eigenschaften ist nur über Property-Fenster, bzw. Wizards beizukommen. Es kann schon mal vorkommen, dass man für eine so simple Eigenschaft, wie "visible=false" 10 Sekunden auf den Wizard warten muss, um dann auf Seite 3 (!) diese Einstellung zu ändern. Das extern geänderte Klassen nicht wieder in das Projekt integrierbar sind, versteht sich in anbetracht dieser Umstände fast von selbst. Eine Versionsverwaltung ist nicht vorgesehen, die Dokumentation beschreibt aber, wie man Forte mit einem vorhandenen CVS-System nutzen kann … ich habe das Studium dieses Kapitels aufgrund der Umständlichkeit des Verfahrens abgebrochen. Die Dokumentation der IDE beschränkt sich im wesentlichen auf einen User-Guide und ein Quickstart-Dokument, beides im PDF-Format. Die Dokumentation der APIs ist dann in dem verwendeten JDK enthalten und muss separat installiert werden. Spezielle Newsgroups gibt es nicht. Erstellt von Jörg S. Stand 01/08/00 Java-IDE-Vergleich Seite 3 / 5 2.3 Micorsoft Visual J++ 6.0 Enterprise Edition Ein ganz besonderer Fall von Java-IDE stellt Microsofts Visual J++ dar. Es basiert auf MS eigenem JDK 1.1.4 (welches nichts mit irgendeinem Sun-JDK zu tun hat). Dies erfordert unter anderem auch die Installation einer eigenen VM von MS. Mit anderen Worten: wer mit MS Visual J++ entwickelt, distanziert sich von der eigentlichen Java-Welt, denn die entsprechenden Programme sind in keinem Fall mit der Sun-VM lauffähig, geschweige denn Plattformunabhängig. Da die Sun und MS-JDKs nicht annähernd kompatibel sind, ist es auch nicht möglich etwaige Zusatzpakete (wie z.B. das von uns benötigte Java3D) in J++-Projekte zu integrieren. Ansonsten macht VJ++ einen sehr guten Eindruck. Es ist alles vorhanden, was zum effektiven Arbeiten nötig ist: eine eigene Versionsverwaltung (Microsoft Visual Sorce Safe), sehr guten Reengineering während der Eingabe, sehr guter Klassen-Browser mit diversen Sprung-Möglichkeiten in den Quellcode usw.. Wer bereits mit anderen Visual-StudioProgrammen (Visual Basic, Visual C++) bekannt ist, wird VJ++ sehr gut und effektiv bedienen. Die Dokumentation liegt in Form von mind. 2 CDs vor (Microsoft MSDN) oder ist Online verfügbar. Es existieren diverse Newsgroups. 2.4 Borland Inprise JBuilder 3 Professional Edition Die auf den ersten Blick eher recht simpel erscheinende IDE von Borland basiert von Haus aus auf dem JDK 1.2. Es ist aber problemlos möglich, zwischen mehreren JDKKonfigurationen zu wechseln. Eine Integration von weiteren APIs ist ebenso machbar. Das deutet schon die Variabilität an, die ein echter Vorteil dieses Programms ist! Änderungen im Quellcode werden während der Eingabe analysiert und in den GUI-Builder übernommen, der auch mit selbst erstellten GUI-Klassen zurechtkommt. Extern editierte Quellen können problemlos wieder in das Projekt integriert werden. Der Debugger ist sehr umfangreich, er ermöglicht z.B. auch das debuggen von Threads. Erstellt von Jörg S. Stand 01/08/00 Java-IDE-Vergleich Seite 4 / 5 Eine Versionsverwaltung muss separat Installiert werden (PVCS). Sehr gut und umfangreich ist auch die Dokumentation. Mehrere Bücher sind Online verfügbar, diverse Beispiele, Tutorials, auch eine Doku der JBCL-API (Java Borland Class Library) fehlt nicht. Es sind diverse Newsgroups verfügbar. Bemerkung: Von Entwicklern, die bereits praktische Erfahrungen mit JBuilder haben, erhielt ich den Hinweis, dass JBuilder-Projekte, selbst wenn sie in pure Java (also nur mit Sun-JDKKlassen) geschrieben sind, nicht mehr extern kompilierbar sind. Dieses Phänomen konnte ich (unter anderem mangels genügend großer Testprojekte) bei den eigenen Tests nicht nachvollziehen. Erstellt von Jörg S. Stand 01/08/00 inkrementeller Compiler, zentrales Repository sehr gute Browser und Suchfunktionen zentrales Repository Vorteile Nachteile Erstellt von Jörg S. beliebig viele - sehr Variabel - intern: IBM Visual Age TeamConnection PVCS extern: PVCS, ClearCase Besonderheiten JIT-Compiler Versionsverwaltung Projekt-Verwaltung GUI-Debugger Class Browser Editor Reengineering GUI-Builder - - JDK-Switching Swing/JFC 1.2 IBM JDK 1.2 Borland; Sun Win 9x / NT4 Pentium 166, 96 MB Ram ab 100 MB Festplatte Win 9x / NT4 SP4, Pentium 48 MB Ram bis 300 MB Festplatte Systemanforderungen Features JBuilder 3 Professional Visual Age for Java 3.0 Name Inprise /Borland IBM Hersteller Java-Entwicklungsumgebungen 3. Übersicht / Gesamturteil Java-IDE-Vergleich kein echtes Java gute Oberfläche Java nur auf Microsoft-Basis Visual Source Safe 6.0 - (WFC) - 1.1.4 Microsoft Stand 01/08/00 wenig praxistauglich pure Java - - - - - beliebig Sun Win 9x / NT4 Pentium 300, 128 MB Ram ab 30 MB Festplatte Forte 1.01 Visual J++ 6.0 Enterprise Edition Win 9x / NT4 Pentium, 48 MB Ram bis 190 MB Festplatte Sun Microsoft Seite 5 / 5