Re: Java GUI Entwicklung - womit?
- From: Stefan Matthias Aust <nobody@xxxxxxxxx>
- Date: Sat, 15 Oct 2005 09:46:09 +0200
Axel Bock wrote:
ich versuche jetzt seit mehr oder weniger zwei Tagen eine ein wenig komplexere GUI unter Eclipse mit SWT zu erstellen. Leider habe ich unter Java noch keine (größere) GUI entwofen, das machte ich sämtlich vorher mit dem Visual Studio in C# / C++.
Ich denke, es gibt keinen GUI-Builder für Java, der dem Ansatz von Microsoft mit C#, Windows Forms und VS.NET entspricht. Bei Microsoft kommen drei Punkte zusammen: Du hast ein grafisches Tool, um Steuerelemente zusammenzuschieben (Layout), du hast Steuerelemente, die derart entworfen sind, dass du bequem alle Einstellungen über "properties" vornehmen kannst (Konfiguration), du kannst weiterhin Datenquellen bequem mit dem UI verknüpfen, bei .NET 2.0 nicht nur Informationen aus Datenbanken in ein DataGrid, sondern beliebige ..NET-Collections (DataBinding). Dies alles ist bei Microsoft INTEGRIERT.
SWT ist definitiv nicht dafür entworfen, dass man es über properties in einem grafischen Tool einstellen kann. Das Eclipse VE setzt da mühsam noch eine Schicht über die Steuerelemente drüber, damit das ungefähr funktioniert.
Ein automatisches Databinding existiert gar nicht. JFace bietet ein MVC-Rahmenwerk on top, aber das basiert auf der Idee, Interfaces zu implementieren und lässt sich damit auch nicht so einfach wie bei .NET über properties konfigurieren.
Auch Swing ist IMHO nicht für einen grafischen GUI-Builder entworfen. Databinding funktioniert hier über Modelle, wo ich noch bei keinem GUI-Builder für Java unterstützung gesehen habe.
Die GUI-Builder für Java ziehlen meist nur auf das Layout ab - IMHO der trivialste Aspekt. Dafür schwächelt hier .NET extrem - die Möglichkeit, Steuerlemente an einer Seite zu verankern oder zu docken ist lächerlich primitiv gegenüber den Layout-Managern von Java. Erst Avalon zieht hier mit Java gleich. Alle früheren GUI-Builder von Microsoft suggieren ein absolutes Layout, wo man sich abhänigkeiten von Fontgrößen und Fenstergrößen einhandelt. Dafür scheint es leicht, mal schnell quick & dirty ein UI zusammenzuschieben.
Ein sehr guter Layouter ist IMHO der neue von Netbeans 5.0. Zwar hat auch VS.NET 2005 diese Guides (eine Idee von NextStep AFAIK) zum automatisch korrekten Setzen von Abständen, doch es fehlen da wieder die Layout-Manager, die einem z.B. erlauben, mehrere Steuerelemente gleich hoch zu machen oder mit einem Verhältnis von 2:3 o.ä. anzuordnen.
Jetzt stellt sich die Frage: Gibt es *IRGENDEINEN* GUI Editor, der in etwa so gut ist wie der von Microsoft (für SWT, wohlgemerkt)? Weil, ganz ehrlich, GUI Entwicklung unter Java / Eclipse ist ein Krampf. Das funktioniert hinten und vorne nicht (richtig).
Der Einäugige unter den Blinden für SWT ist IMHO der SWTDesigner von Instantiations. Doch auch das ist ein reiner Layouter, meines Wissens beherrscht er kein Databinding, weil eben SWT das gar nicht kann.
(Wenn sich das etwas frustriert anhört, dann liegt das daran, dass ich seit zwei Tagen keine Applikationslogik schreiben konnte, sondern nur mit diesem Toolkit experimentiere. Das scheint zwar sehr gut zu sein, aber zum per-Hand-Programmieren ist das doch wirklich nix mehr.)
Wieso? Die Applikationslogik solltest du doch in jedem Fall unabhängig vom UI schreiben können und könntest diese doch erstmal fertigstellen.
-- Stefan Matthias Aust // Ergo bibamus, ne sitiamus, vas repleamus! .
- Follow-Ups:
- Re: Java GUI Entwicklung - womit?
- From: Stefan Schwetschke
- Re: Java GUI Entwicklung - womit?
- From: Karsten Lentzsch
- Re: Java GUI Entwicklung - womit?
- From: Michael Hüttermann
- Re: Java GUI Entwicklung - womit?
- References:
- Java GUI Entwicklung - womit?
- From: Axel Bock
- Java GUI Entwicklung - womit?
- Prev by Date: Brettspiele Programmieren
- Next by Date: Re: Java GUI Entwicklung - womit?
- Previous by thread: Re: Java GUI Entwicklung - womit?
- Next by thread: Re: Java GUI Entwicklung - womit?
- Index(es):
Relevant Pages
|