Multi: Plattformübergreifende GUI-Programmierung

Beitrag lesen

Es stimmt auch einfach nicht. Es _kann_ langsamer sein, aber bei richtiger Programmierung ist es "nicht langsamer". Außer beim Start.

Also ist es langsamer. Gilt im Übrigen auch fürs beenden.
Und nur, weil es vielleicht die eine oder andere Software gibt, die so programmiert ist, dass sie genauso schnell läuft, wie ein C++-Programm, ist meine Aussage noch nicht falsch. Ausnahmen bestätigen lediglich die Regel aber heben sie nicht auf.

Auch falsch. Es ist mit Java sehr leicht möglich betriebssystemähnliche Styles zu benutzen. Und glaub mir, der Unterschied wird dir nicht auffallen. Das mit dem JRE ist der einzige Nachteil, aber eben die Voraussetzung. Außerdem musst du das ja nur einmal tun.

Auch hier: Nur weil es eine Handvoll  Programme gibt,  die eine "normale" GUI haben, ist meine Aussage nicht falsch. Ausnahmen und so ....

Java (und/oder besser gesagt die VM) bietet aber sehr bequeme Möglichkeiten. Beispielsweise das Exceptionhandling und den GC. Heutige Hardware ist so weit, dass der Vorteil durch die geringere Entwicklungszeit die Nachteile (höherer Resourcenverbrauch) tausend mal aufwiegt. Es gibt natürlich Ausnahmefälle (z.B. Spiele).

Ja, wie gesagt, Java ist eine Notlösung, wenn der Programmierer kein C++ lernen will/kann.
Und die Aussage, dass der Ressourcenverbrauch nicht relevant ist, ist schon reichlich am User vorbei. Wenn du glaubst, ein Rechner ist nur dazu da, um den Ressourcenhunger eine Javaanwendung zu stillen, anstatt mehrere Programme gleichzeitig auszuführen, frag ich mich, was du programmierst.

Grundsätzlich hat ein Programm mit so wenig Ressourcen  wie möglich auszukommen, tut es das nicht, liegt ein Konzept- und Programmierfehler vor. Wenn ich auf meinem Rechner 20 Programm gleichzeitig laufen lasse und ein Javaprogramm meint, dadurch bleibtnicht genug Leistung übrig, heisst es für mich, dieses Sprache ist für Multitasking völlig daneben.

Und so nebenbei, nicht jeder Kunde will neue Hardware anschaffen, nur weil der Programmierer nichts taugt. Ein guter Programmierer passt sich den Gegebenheiten an, nicht umgekehrt.

Aber spätestens bei größeren Projekten wird C(++) einfach deutlich unangenehmer als Java oder noch besser Scala (wobei dieses auch Tücken hat, z.B. die Operatorenüberladung) oder .NET (jaja, ich weiß).

Wieviele grössere Projekte hast du mit C++ realisiert? Vor ca. 1 Jahr hatte ich eins mit ca. 2 Mio. Codezeilen mit 12 Programmierern. Das einzig unangenehme war ein Programmierer, der zu 90% Java programmiert und genau deine Einstellung hatte. Genau der Code musste dann getauscht werden. Einmal wegen dem "der Rechner hat doch gneug Leistung und Speicher" und einmal wegen dem bequemen Programmieren in Java, bei dem Effizienz und Struktur irgendwie nicht mehr zu existieren scheinen.

Sei mir nicht böse, aber deine Argumente lesen sich für mich wie ein Java-Verfechter, der aber
1. noch nie ein grosses Projekt realisiert (oder dabei mitgewirkt) hat
2. nur Java kennt und alles andere nur vom Hörensagen.
3. einzelne Java-Programme kennt und glaubt sie wären die Referenz

Da dieser Beitrag aber völlig am eigentlichen Thema vorbei ist und ich auch keine Lust auf einen "Sprachenkrieg" hab, schliesse ich hier. In meinen 25 Jahren Programmiererfahrung weiss ich, worauf es mir und den Kunden ankommt und das ist entscheidend.