Archive

Archive for the ‘Eclipse’ Category

IDE Shootout: Vergleich von Eclipse vs. IntelliJ Idea vs. Netbeans

May 28th, 2009 Reto Kiefer No comments

Wie der geneigte Leser an den Posts in meinem Blog sehen kann, habe ich mich in der letzten Zeit mit verschiedenen IDEs im Zusammenhang mit verschiedenen Sprachen und Technologien beschäftigt. Auch wenn der Prozess der Sichtung noch nicht abgeschlossen ist, wage ich dennoch einmal den Vergleich zwischen den drei Major IDEs wenn es um die Entwicklung mit Java und anderen Sprachen geht. Ich werde nicht nach IDE sortieren sondern nach verwendeten Sprachen und Frameworks. Zur Verwendung kommen die aktuelle Eclipse 3.4 (mit Vorausschau auf 3.5), Netbeans 6.7 Beta und IntelliJ Idea 8.1.

PHP

Die PHP Unterstützung ist nur in Eclipse und in Netbeans gegeben. Das freie PDT in Eclipse ist gleichzeitig die Grundlage für das kommerzielle Zend Studio for Eclipse, die führende IDE im PHP Bereich. Von den Kosten kann man fairerweise nur PDT und das Netbeans-Plugin vergleichen. Beide haben einen großen Coding Comfort und die Debugger Unterstützung ist ausgereift. Beide bringen auch Standardfeatures ihrer jeweiligen Mutter IDE mit, also Code Folding, Zeilennummerierung, ausgefeilte Suchen & Ersetzen Funktionen, Filenavigator und eine Outlineansicht sowie Anzeigen über Probleme, Todos etc.

Das Zend Studio erweitert PDT in vielerlei Hinsicht, etwa um ausgefeiltes Codeformatting, Unittest-Unterstützung, Server-Debugging und vieles andere mehr. Das Zend Studio (und damit die Eclipse-Plattform) ist klarer Gewinner des Vergleichs es kostet aber auch an die 400 €. Bleibt man bei den kostenfreien Lösungen gewinnt meines Erachtens die Netbeans-Lösung vor Eclipse. Zum einen ist das Editieren von Code in vielerlei Hinsicht komfortabler, die IDE fühlt sich schneller an und vor allem sind mit Unittest-Unterstützung und Code-Coverage-Analyse bereits Pro-Features aus dem Zend Studio frei verfügbar.

Fazit: Auch für größere Projekte reicht die Netbeans-Lösung aus, in einem aktuellen Projekt spicht einzig das Code-Formatting noch unbedingt für Zend, alles andere könnte man vermutlich auch mit Netbeans erledigen.

Flex

Für Flex fällt Netbeans komplett aus, da es keinerlei Support bietet. Für Eclipse gibt es den großen Flex Builder von Adobe, der kostenpflichtig ist, es sei denn man ist Student oder grade durch die Wirtschaftskrise arbeitslos geworden. IntelliJ ist ja eine kommerzielle IDE, aber der Flex Support kostet keinen Aufpreis.

Der Flex Builder ist so ziemlich der Standard wenn es um Flex Entwicklung geht. Er hat einen einmaligen visuellen Editor, der Roundtip-Engineering zwischen visueller und coding Ansicht bietet. Flex Builder bietet in Sachen Run-Configuration, Debugging und Profiling so ziemlich alles was man benötigt. Der Editor ist jedoch nur mäßig, so gibt es kaum Möglichkeiten, die Sourcen zu verändern, noch nicht mal ein “Format Source” ist dabei. Für einige Sachen gibt es Plugins aber vieles bleibt außen vor. Der Flex Builder ist entweder Standalone mit Eclipse zu beziehen oder als Eclipse Plugin.

Ein zweites Eclipse Plugin sind die Flash Development Tools (FDT) von Powerflasher, die in ihrer neuesten und teuersten Version Unterstützung für Flex bieten. Der Coding Comfort soll hier sehr gut sein, aber für den fast doppelten Preis des Flex Builders ist das definitiv zu viel.

Eine Alternative bietet hier IntelliJ gerade wenn man noch in anderen Sprachen programmiert erhält man einen ausgezeichneten Flex Support. Die Editorfunktionen sind sehr umfangreich und man findet viele Features, die man normalerweise nur in einem Java-Editor finden würde. Idea 8 unterstützt auch das Debugging von Flex.

Fazit: Eclipse oder IntelliJ Idea ist hier die Entscheidung. Wer das eine oder das andere mag wird seine Flex IDE aus dem gleichen Hause nehmen. Gerade wenn beide Backends in Java gecodet werden spielt es keine Rolle. Ist das Backend zu einer Flexanwendung aber in PHP geschrieben so bietet sich die Kombination Zend Studio for Eclipse in Verbindung mit dem Flex Builder Plugin an.

Groovy & Grails

Für Groovy und Grails gibt es für alle drei IDEs Unterstützung aber in unterschiedlicher Qualität. Ein ziemlicher Ausfall ist das Plugin für Eclipse. Es kann sehr wenig und ist noch in einem frühen Stadium. IntelliJ war lange der Marktführer in Sachen Groovy-/Grails-Support, der Vorsprung schwindet aber mit jeder Version von Netbeans stärker. Die aktuelle Beta von Netbeans 6.7 reicht an die Fähigkeiten von Idea 8 heran. Hier entscheidet alleine, was es für Vorlieben gibt. Eclipse sollte aus der Entscheidung außen vorgelassen bleiben und wenn schon IntelliJ im Hause ist sollte man dabei bleiben. Startet man aber auf der grünen Wiese oder will einfach mal nur mit einer gescheiten Entwicklungsumgebung etwas Groovy und Grails programmieren, dürfte die Entscheidung eindeutig für die Netbeans 6.7 Beta ausfallen.

Java-Script / HTML

Java-Script wird von allen drei IDE hervorragend unterstützt. Für Eclipse gibt es mit Aptana sogar eine Distribution, die auf die JS Entwicklung abzielt. Idea 8 hat einen ebenfalls sehr guten Java-Script Support und zeigt dies eindrücklich mit dem Java-Script Debugger. Netbeans in der aktuellen Beta bringt auch einen exzellenten Java-Script Support mit und ist in Sachen Codeerkennung und Codevervollständigung vorne. Der HTML Support ist ebenfalls in allen drei IDEs gut bedacht und es macht für einen Entwickler durchaus Sinn eine der IDEs statt Dreamweaver :-/ oder anderer Tools wie Espresso zu benutzen. Die Entwicklungsgeschwindigkeit wird sich positiv bemerkbar machen. Man muss auch bei einer IDE nicht immer auf einen visuellen Modus verzichten.

Java

Last but not least will ich kurz auf Java eingehen, die Sprache, der alle drei IDEs ihre Existenz verdanken. Nicht nur weil sie in Java programmiert sind sondern auch weil Java die erste Sprache war, die sie unterstützten. Alle drei IDEs bieten einen hervorragenden Support für die Javaentwicklung und lassen kaum Wünsche übrig. Wer welche IDE für Java einsetzt, wird nach seinen Vorlieben (oder denen seines Projektleiters) entscheiden oder nach dem, was er gewohnt ist. Unterschiede gibt es trotz aller Gemeinsamkeiten dennoch. Ein großes Plus von Eclipse ist die Mannigfaltigkeit von Plugins, die einem die Javaentwicklung erleichtern oder diese Unterstützen. Neben dem freien Eclipse gibt es auch kostenpflichtige Distributionen, die spezielle Einsatzzwecke abdecken- Der Vorteil von Netbeans ist die Einfachheit der Inbetriebnahme. man installiert es lädt über den Plugin Manager ein paar Plugins nach und beginnt ein neues Projekt in kürzester Zeit. Wer einmal eine umfangreiche Eclipse-Installation aufgesetzt hat, kann davon nur träumen. IntelliJ Idea hat seine eingeschworene Nutzergemeinde und geht einen Sonderweg in Nutzerführung und IDE-Nutzung.

Fazit

Wer welche IDE nutzt sollte dies von seinen Vorlieben, den Vorgaben seiner Projekte und den Anforderungen abhängig machen. Geben sich die IDEs bei Java wenig, sieht es bei der Unterstützung für andere Sprachen schon wieder anders aus. Der Vorteil für den Entwickler ist, dass er für seine Technologie fast immer eine kostenfreie Option angeboten bekommt – nur selten ist ein Obulus für die Unterstützung einer Sprache notwendig. IntelliJ scheidet beim Thema Kostenfreiheit aus, da es kommerziell ist, genau wie der Flex Builder, Zend Studio oder MyEclipse. Netbeans, das lange das Stiefkind unter den IDEs war legt seit Version 6.5 ein atemberaubendes Tempo vor und hat zu den anderen IDEs längst aufgeschlossen. Es bleibt nur zu hoffen, dass Suns Übernahme durch Oracle nicht das Ende von Netbeans und die Entscheidung für JDeveloper bedeutet. Es wäre schade um eine gute IDE und auch die innovationstreibende Konkurrenz zu Eclipse wäre großteils verschwunden.

Wie auch immer die individuelle Entscheidung ausfällt, bleibt festzuhalten: Es ist gut, dass die Entwickler Freiheit in den eingesetzten Produktionsmitteln haben. Der zumeist kostenlose Zugang zu IDEs fördert auch den Zugang zur Programmierung. Und dass neben Java immer mehr Sprachen und Technologien einen zunehmend guten IDE Support erhalten ist wohl das größte Plus der aktuellen Entwicklung.

Categories: AJAX, Adobe Flex, Development, Eclipse, Java, JavaFX, PHP, XML Tags:

Bestandsaufnahme Netbeans

April 3rd, 2009 Reto Kiefer 1 comment

Wer mein Blog liest weiss, dass ich zu den mehr oder minder überzeugten Eclipsenutzern im IDE-Ringen zähle. Zend Studio und Flex Builder neben diversen anderen Editoren sind mein tägliches Werkzeug und ich arbeite im Großen und Ganzen gerne damit.

Aus diversen Anlässen heraus habe ich aber immer wieder mit NetBeans zu tun, sei es durch das Nutzen Groovy / Grails Plugins (was bei Eclipse schlicht nicht zu benutzen ist) oder die reine Neugierde, einfach einmal das PHP Plugin zu probieren. Auch durch die Möglichkeit sich über Netbeans die Entwicklung von JavaFX zu erleichtern, habe ich mich mit Netbeans intensiver beschäftigt.

Und siehe da, Netbeans ist in weiten Teilen konkurrenzfähig und in manchen Bereichen deutlich leistungsfähiger als die anderen IDEs. Vor allem wirkt die Netbeans-Entwicklung sehr agil und flexibel. Das Netbeans-Team geht sehr schnell auf Entwicklungen ein und implementiert sie in der IDE. So ist etwa der Ruby/JRuby Support in Netbeans legendär. Die Java-Tools sind ebenfalls mehr als brauchbar, der Swing-GUI-Builder Matisse etwa sucht noch seinesgleichen.

Der Groovy und Grails Support ist auch sehr vorbildlich (bitte den GSP Support in der nächsten Version berücksichtigen!) und auch PHP kann punkten. Der Unittest Runner und die in Version 6.7, Milestone 3 hinzugekommene Code Coverage, lassen den Wind für Zend deutlich eisiger werden. Mit PDT kann Netbeans sicherlich jetzt schon konkurrieren.

Wer viel mit Java-Script zu tun hat sollte sich einmal Netbeans ansehen, die Unterstützung ist nach Aussagen vieler besser als die von Aptana. Und wer mit Erlang, Scala oder Python programmiert wird mit Netbeans auch fündig werden.

Auch vom Handling geht mit Netbeans vieles einfacher. So ist etwa die Installation von Plugins eine Leichtigkeit. Alle verfügbaren Plugins stehen in einer Auswahlliste bereit und man braucht nicht einen halben Tag um alle Plugins, die man so braucht zusammen zu suchen.

Summa summarum ist Netbeans mittlerweile auch für den anspruchsvollen Entwickler eine IDE der Wahl. Wer “exotische” Sprachen nutzt wird hier ebenso fündig wie bei der Suche nach Support für die Mainstream Sprachen. Auch der Vorbehalt die Swing GUI sei langsam, stimmt so nicht mehr und unter Mac OS X sieht Netbeans ab Version 6.7 sogar regelrecht schick aus.

Netbeans ist also definitiv auf dem aufsteigenden Ast, seine Entwicklung und seine Nutzerzahlen gewinnen an Momentum. Man kann nur hoffen, dass durch die geplante Übernahme von Sun durch IBM diese hervorragende IDE Alternative nicht untergehen wird, denn IBM hat bereits eine IDE und das ist Eclipse.

The missing Tool: Code Formatter für Flex Builder

February 13th, 2009 Reto Kiefer No comments

Daniel hat es ausgegraben und es ist eines der Tools, die ich am meisten beim Programmieren in Flex vermisst habe.

Flex Builder ist unbenommen ein mächtiges Tool für die Flex-Programmierung aber in Sachen Coding-Comfort weit hinter dem Stand, den etwa Java besitzt, hinterher. So gut der visuelle Editor sein mag, für die Arbeit im Texteditor bietet FlexBuilder definitv zu wenig. Besonders schmerzlich vermisst habe ich die Option, der Quellcode formatieren zu lassen. 

Dafür gibt es nun Abhilfe in Form eines kleinen Plugins, welches sich auf Sourceforge findet. Der Flex Formatter bietet formatierten Code auf Knopfdruck und lässt sich sehr vielseitig in den Preferences auf die eigenen Bedürfnisse anpassen.

Unbedingt eine Empfehlung für die Eclipse Plugin-Sammlung.

Eclipse Ganymede

June 26th, 2008 Reto Kiefer No comments

Nun ist es soweit und Eclipse Ganymede (3.4) ist verfügbar.

Es ist nun schon das dritte Jahr in dem mehrere Projekte zeitgleich und termingerecht veröffentlicht wurden. Dieses Jahr sind es nunmehr 23 Einzelprojekte, die in Ganymede zusammengefasst werden. Insgesamt 18.000.000 Zeilen Programmcode stecken dahinter, eine beeindruckende Zahl.

Zu den Neuerungen gehören neben Performance- und vielen Detailverbesserungen ein neuer Update- und Pluginverwaltungsmechanismus, sowie viele Verbesserungen an den JDT (Java Development Tools). Natürlich bietet darüber hinaus ein jedes der Einzelprojekte wiederum viele Neuerungen. Gerade im Bereich XML und Webservices sind viele neue Funktionen zu finden.

Einen herzlichen Glückwunsch an alle Beteiligten, die diesen Mega-Release möglich gemacht haben!

Categories: Development, Eclipse, Java Tags:

SWT unter Cocoa

June 11th, 2008 Reto Kiefer No comments

Einer der Gründe warum Eclipse unter Mac OS X momentan nur unter Java 5 und nicht unter Java 6 läuft, ist dass das Eclipse zugrundeliegende GUI Tookit SWT nur unter einem 32-bittigen Java lauffähig ist.

Der Hintergrund ist, dass SWT momentan auf Carbon aufsetzt einem mittlerweile in die Jahre gekommen (und bald veralteten) GUI Framework von Apple. Schon seit Jahren rät Apple zum Umstieg auf das moderne Cocoa, das eben auch 64-bit fähig ist.

Nun kommt Bewegung in die Entwicklung, denn Adobe und Apple haben angekündigt, den Cocoa Port von SWT in die Hand zu nehmen. Geleitet wird das Projekt von einem Apple Ingenieur, unterstützt von Adobe Entwicklern.

Wer sich wundern sollte, warum gerade Adobe SWT (und damit Eclipse) unterstützt, der sei auf die Eclipse basierenden Produkt verwiesen, wo neben dem Flex Builder auch die Entwicklungs- und Verwaltungsumgebungen für die LiveCycle Enterprise Services zu nennen wären.

Eine erfreuliche Entwicklung, deutet sie zum einen für Eclipse auf Mac OS X eine erfreuliche Zukunft an zum anderen wird ein Commitment Apples zu Java erkennbar, was lange nicht so sichtbar war.

Categories: Development, Eclipse, Java, Mac Tags:

Vortrag am WebDeveloper Day der HDM

May 18th, 2008 Reto Kiefer No comments

Daniel und ich haben das Vergnügen auf dem diesjährigen WebDeveloper Day der Hochschule der Medien in Stuttgart einen Vortrag zu halten. Für die Veranstaltung am 30. Mai 2008 werden wir einen Vortrag halten mit dem Titel: “Adobe Flex: Rich Internet Applications mit Flex und Java”.

Wir stellen Flex als innovative Fronttechnologie für (Unternehmens-) Anwendungen vor und stellen das Zusammenspiel von Flex mit Java in den Vordergrund. Es gibt viele Wege eine Flexanwendung an ein Java-Backend anzukoppeln, und wir werden die verschiedenen Möglichkeiten unter den Gesichtspunkten Interoperabilität, Performance und Implementierungsaufwand diskutieren.

Die 75 Minuten Vortrag werden von einem “Hands on”-Beispiel begleitet und durch eine Q&A Session abgeschlossen. Gäste sind willkommen und die Veranstaltung ist kostenlos. Ein Blick auf die anderen Vorträge zeigt ein breites Spektrum an interessanten Themen. Für diejenigen, die nicht vor Ort sein können gibt es einen Videostream.

Wir freuen uns auf Stuttgart und eine spannende Diskussion mit den Teilnehmern!

Endlich: Java 6 for OS X

April 30th, 2008 Reto Kiefer No comments

Nach langer Ungewissheit hat Apple endlich die Java 6 SE für Leopard zur Verfügung gestellt. Durch Apples Verhalten und Schweigen entstand das Gefühl, dass es gar kein Java 6 mehr für OS X geben würde. Diese Zweifel werden durch das Release endlich beseitigt.

Java 6 (es handelt sich um 1.6.0_05) benötigt OS X 10.5.2 und einen 64-Bit Prozessor von Intel – Anwender anderer Prozessoren oder älterer Versionen von OS X bleiben von dem Update ausgeschlossen.

So gut und wichtig, dass Java 6 endlich erschienen ist, bleibt der etwas schale Nachgeschmack, dass man durch die Entscheidung nur eine 64bit Version anzubieten, Eclipse nach wie vor mit Java 5 laufen lassen muss. Dieser Zustand wird auch noch eine Weile anhalten, weil das Eclipse zugrundeliegende SWT von 32bit Carbon (welches es auch nicht in 64bit geben wird) auf 64bit Cocoa portiert werden muss, was keine geringe Aufgabe ist.

Allerdings gibt es auch noch andere Mütter mit netten IDEs, hier die brandaktuelle Netbeans 6.1 mit Java 6 auf Mac OS X:

Categories: Development, Eclipse, Java, Mac Tags: ,

Soylatte: Java 6 for Mac OS X

December 14th, 2007 Reto Kiefer 4 comments

Wie bereits in Blogeinträgen berichtet, entwickelt Landon Fuller ein Java 6 für OS X, welches er vom JDK des BSD Unix ableitet. Mittlerweile ist die Version 1.0 des Java 6 Ports namens Soylatte erschienen und sie läuft einwandfrei.

Ein Aufruf auf der Shell ergibt die gewünschten Resultate:

Tyr:~ retokiefer$ java -version
java version "1.6.0_03-p3"
Java(TM) SE Runtime Environment
(build 1.6.0_03-p3-landonf_05_dec_2007_21_09-b00)
Java HotSpot(TM) 64-Bit Server VM
(build 1.6.0_03-p3-landonf_05_dec_2007_21_09-b00, mixed mode)

Auch das Einbinden von Fullers Java 6 in Eclipse geht einwandfrei. Einfach die zusätzliche JVM in den Preferences einstellen und den Compiler auf Version 6 einrichten und es läuft.

Dieses Java 6 ist für Entwicklungszwecke durchaus ein guter Ersatz, dennoch bleibt auf eine offizielle Apple-Version von Java 6 zu warten, denn diese sollte zum einen besser ins System integriert sein und zum anderen auch nicht auf X11 für Grafikausgabe angewiesen sein, Sound unterstützen etc.

Aber Soylatte ist ein geniales Projekt und wenn die Entwickler um Landon Fuller in dem Tempo weitermachen, hat man eventuell bald eine bessere Javaumgebung als mit der von Apple gelieferten. Auch in Sachen Portierungstempo von Java 7 macht Soylatte Hoffnung, denn die Entwicklungen sollen dem openJDK Projekt zugute kommen.

Categories: Development, Eclipse, Java, Mac Tags: