Bei AWT und SWT stimme ich dir zu, aber
>>da Swing nicht der OS-Optik entpricht
ist einfach nicht mehr wahr. Ich würde bei Windows mal von 98% und bei GTK, Gnome und Mac von 99-100% OS L'nF sprechen. Der Durchschnittsanwender wird keinen Unterschied bemerken.
Für Java gibt es einfach keine Technologie die an WindowsForms zusammen mit Visual Studio auch nur annähernd rankommt.
Ich bin wahrlich kein Freund von GUI-Buildern, aber beispielsweise Matisse (der GUI Builder von Netbeans) gilt als einer der leistungsfähigsten seiner Art. Da ich strikt auf derartige Werkzeuge verzichte, maße ich mir allerdings keine fundierte Meinung an.
Für C++ nehme ich gerne wxWidgets( oder wie Adobe QT ) wenn es plattformunabhängig sein soll
Jambi heißt das Java Binding für QT :wink:
- native ausgereifte und komplexe GUI
Hat Java auch
- Windows System sowie Hardwareprogrammierung
Die wenigen Stellen an denen das tatsächlich notwendig wird lassen sich in Java Problemlos über JNI füllen
- fester Bestandteil von Windows
nein. Vorinstallierte Runtime ab Vista. Java ist in vielen Auslieferungen von Betriebsystemen integriert.
- sehr gute kostenlose IDE
Glaubt man den Umfragen, ist IntelliJ noch immer die IDE schlechthin. Für Java gibt es sogar mindestens 5 hervorragende. IntelliJ, Eclipse, Netbeans, JBuilder, JDeveloper
- strikt Objektorientiert
In C# wird genau wie bei Java ein Boxing Verfahren verwendet
- wenn es sein muss auch Zeigerprogrammierung möglich
Das akzeptiere ich, auch wenn Zeiger nicht ganz ungefährlich sind.
- Bei DirectX Anwendungen grade mal 2%-15% langsamer als native C++/DX-Code also auch im 3D Bereich mehr als zu gebrauchen.
Auf Java Seite währen da beispielsweise
http://bytonic.de/html/jake2_de.html und
http://www.sun.com/software/looking_glass/ zu nennen. Interessant ist, das jake2 mit einer aktuellen JRE etwa gleich schnell (teilweise sogar schneller) als die Original C Implementierung ist.
Zu looking glass ist zu sagen, dass es trotz der wesentlich aufwendigeren Effekte bei weitem nicht die Hardwareanforderungen von Aero Glass benötigt.
- properties und delegates gefallen mehr sehr gut
Es exisitieren auch Binding Frameworks für Java. Ich kann verstehen das man das Konzept der properties/delegates für reizvoll empfindet, aber letztlich ist es syntactic sugar mit geringem Mehrwert.