The only IDE I ähh
Gängige IDEs werben immer mit großen Worten. Produktivität und Flexibilität: das sind Worte bei denen das Herz eines Entwicklers doch wirklich höher schlägt, nicht wahr nicht wahr? Netbeans setzt sogar noch einen drauf und behauptet es sei die einzige IDE, die ich bräuchte. Tatzbarsache? Derzeit geht mir Netbeans primär verdammt auf den Keks mit einigen designtechnischen Schnörkeln, die so gar nichts mit Produktivität zu tun haben. Aber erstmal von Anfang an:
Für mein Projekt LophanMobile, ein kleines Mathematikprogramm für Mobiltelefone und PDAs mit Java Unterstützung, nutze ich Netbeans 6, weil es einen verdammt coolen GUI Editor mitbringt und von Haus aus z.b. Lokalisierungsunterstützung mitbringt. Das nimmt mir einiges an Arbeit ab (ich gebs ja zu).
Betrachtet man Netbeans von dieser Seite, ist es faktisch makellos. Probleme gibt’s erst, wenn so ein Projekt etwas größer wird. Wie gesagt gibt’s einen GUI Editor. Dieser Editor bringt auch einen sogenannten Flow-Designer mit, der alle Elemente über eine kleine Verbindungslinie zusammenbringt die etwas miteinander zu tun haben. Wenn ich also ein Hauptmenü habe und über einen Eintrag ins nächste Menü will, zieh ich einfach ne Linie vom Menüeintrag rüber zum anderen Menü. Fertig. Klingt einfach: Ist es auch. Diese Linien haben aber einen “Haken”. Weils schön aussehen soll sind diese Linien nämlich nicht einfach streng durchgezogen, sondern haben jeweils 2 rechte Winkel. Die Netbeans Freaks von nebenan nennen den “orthogonal router”. Sollte mich eigentlich nicht interessieren. Tut es aber. Denn bei größeren Anwendungen schickt der entsprechende Algorithmus, der die Ecken sucht, Netbeans in den Winterschlaf. Warum? Weil er scheiße ist. Anders kann ichs nich nennen, wenn ein Stückchen Programmcode, der an ein paar Linien ein paar Ecken sucht, einen Dual Core Rechner in die Knie zwingt und Netbeans selbst für bis zu 20 Sekunden einfriert. “slow” ist dafür gar kein Ausdruck mehr und unter “Performance” würde ich wahrscheinlich sowas auch nicht mehr kategorisieren. Die überwältigende Erklärung der Entwickler:
Unfortunately we do not have a good incremental orthogonal router
algorithm.
Was echt? Hätte ich jetzt *so* gar nicht mitbekommen.
Lösungvorschläge?
1) During animation of graph-layout, temporarily disable routing of connections.
2) Introduce a new/faster orthogonal routing algorithm.
Ja! Besonders 2) haut mich völlig aus den Socken! Danke für den Input! ……narf
So wie ich das sehe wird dieser Bug auch in Netbeans 6.1 nicht korrigiert sein, obwohl er schon seit Oktober 2007 bekannt ist.
Derzeit bastel ich selbst an einem Patch für Netbeans, der die Anfrage nach “orthogonal routers” faktisch ignoriert und nur “direct router” zurückgibt. Wer Interesse hat kann hier bei Zeiten nochmal vorbeischaun.
Veröffentlicht in Meine Projekte, Programmierung | Diesen Artikel drucken


