Warum besudelt ihr meinen Thread mit FlammenZuletzt geändert von Chromanoid am Sa 5. Mär 2011, 10:36, insgesamt 2-mal geändert.
Grund: Habe das mal in das passende Thema verschoben ;).
Ich hasse Java
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Ich hasse Java
- Chromanoid
- Moderator
- Beiträge: 4273
- Registriert: 16.10.2002, 19:39
- Echter Name: Christian Kulenkampff
- Wohnort: Lüneburg
Re: Ich hasse Java
Das ist eine strategische Vorbereitung darauf diesen Thread löschen zu dürfen :D :D
- Top-OR
- Establishment
- Beiträge: 330
- Registriert: 02.03.2011, 16:32
- Echter Name: Jens H.
- Wohnort: Esslingen/Dessau
- Kontaktdaten:
Re: Ich hasse Java
@Krishty: you made my day.
Beruflich programmiere ich (u.A.) auch Java. Mein Chef kommentiert meine zeitweiligen "Wutausrufe aus dem Nichts gegenüber Java" immer mit meiner persönlichen Unfähigkeit. Naja, vielleicht hat er ja recht, aber auch in meiner naiven nichtswissenden Sichtweise muss und möchte ich trotzdem sagen: "Java ist (oft) ein Arsch!" Hähääääää, dem hab ichs aber gezeigt. ^^
In diesem Sinne: Danke für diesen Thread!
Beruflich programmiere ich (u.A.) auch Java. Mein Chef kommentiert meine zeitweiligen "Wutausrufe aus dem Nichts gegenüber Java" immer mit meiner persönlichen Unfähigkeit. Naja, vielleicht hat er ja recht, aber auch in meiner naiven nichtswissenden Sichtweise muss und möchte ich trotzdem sagen: "Java ist (oft) ein Arsch!" Hähääääää, dem hab ichs aber gezeigt. ^^
In diesem Sinne: Danke für diesen Thread!
--
Verallgemeinerungen sind IMMER falsch.
Verallgemeinerungen sind IMMER falsch.
Re: Ich hasse Java
Aus der Java-Spezifikation ein C-Negativbeispiel:
Code: Alles auswählen
int q = (n+7)/8;
switch (n%8) {
case 0: do {foo();
case 7: foo();
case 6: foo();
case 5: foo();
case 4: foo();
case 3: foo();
case 2: foo();
case 1: foo();
} while (--q > 0);
}
- Aramis
- Moderator
- Beiträge: 1458
- Registriert: 25.02.2009, 19:50
- Echter Name: Alexander Gessler
- Wohnort: 2016
- Kontaktdaten:
Re: Ich hasse Java
Arg, wer hat da Duff's Device so massakriert?
Ich wollte eben eine von der Funktionalitaet her aequivalente Implementierung in Java posten, aber sie ist leider ueber 12500 einzelne Klassen und Interfaces verstreut und laeuft ausserdem nur als Enterprise Java Bean :-)
Ich wollte eben eine von der Funktionalitaet her aequivalente Implementierung in Java posten, aber sie ist leider ueber 12500 einzelne Klassen und Interfaces verstreut und laeuft ausserdem nur als Enterprise Java Bean :-)
- CodingCat
- Establishment
- Beiträge: 1857
- Registriert: 02.03.2009, 21:25
- Wohnort: Student @ KIT
- Kontaktdaten:
Re: Ich hasse Java
Haha, sehr schön, man braucht es zwar praktisch nie, schon gar nicht, wenn man nur Java-Performance anstrebt, aber weil es in Java nicht möglich ist, ist es ein C-Negativbeispiel. Propaganda überall....
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
- Top-OR
- Establishment
- Beiträge: 330
- Registriert: 02.03.2011, 16:32
- Echter Name: Jens H.
- Wohnort: Esslingen/Dessau
- Kontaktdaten:
Re: Ich hasse Java
Ist CSS was für Püppies oder blockt mein Browser das weg? Meine Augen bluten ...Krishty hat geschrieben:http://blog.fefe.de/?ts=b36e65a8
--
Verallgemeinerungen sind IMMER falsch.
Verallgemeinerungen sind IMMER falsch.
- Top-OR
- Establishment
- Beiträge: 330
- Registriert: 02.03.2011, 16:32
- Echter Name: Jens H.
- Wohnort: Esslingen/Dessau
- Kontaktdaten:
Re: Ich hasse Java
Oh ja schon viel besser, danke! Jetzt versteh ichs auch ... komisch. :-P
Muss wohl ein quantenmechanischer Effekt sein.
Muss wohl ein quantenmechanischer Effekt sein.
--
Verallgemeinerungen sind IMMER falsch.
Verallgemeinerungen sind IMMER falsch.
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Ich hasse Java
Läuft überall. Aber mit jeder Aktualisierung anders.
- dv
- Beiträge: 51
- Registriert: 15.09.2002, 17:46
- Benutzertext: Ugauga.
- Alter Benutzername: dv
- Wohnort: Südamerikanischer Dschungel
- Kontaktdaten:
Re: Ich hasse Java
Wie ich höre, kriegt Java 7 endlich Lambdas (hey, selbst C++ hat die schon..)
Implementierung: http://openjdk.java.net/projects/lambda/
Dann sehe ich das: http://cr.openjdk.java.net/~briangoetz/ ... ate-3.html
Und ich denke mir:
bei den Kompromissen, die sie da nehmen müssen, weil die Sprache so fest verankert ist in der Welt der nominativen Typisierung. Man muß wieder irgendwelche Interfaces definieren/verwenden, die eine Methode beinhalten (Comparable zB). Lambdas sind also nur Syntax Sugar, um sich das explizite Erzeugen anonymer Klassen usw. zu ersparen. Funktionstypen per se existieren weiterhin nicht.
C# hat Delegates (und im übrigen kein Type Erasure, welches auch ein Riesenproblem von Java ist). C# hat auch bereits Lambda, und das betreibt keinen solchen Unsinn.
C++ hat Funktionspointer, Methodenpointer, Funktoren, sowie eine generische Kapselung dieser Drei unter dem Namen "Function Objects". Siehe boost.function bzw. tr1 function. Wenn man das mal verwendet hat, will es nicht missen. C++0x führt auch lambda-Ausdrücke ein, welche zwar ebenfalls nur Syntax Sugar für das Definieren eines Funktors, jedoch viel mächtiger sind als Java-Lambda, da es eben in C++ Function Objects gibt.
Von den dynamischen Sprachen (Python, Ruby, Javascript ..) gar nicht zu reden.
Implementierung: http://openjdk.java.net/projects/lambda/
Dann sehe ich das: http://cr.openjdk.java.net/~briangoetz/ ... ate-3.html
Und ich denke mir:
bei den Kompromissen, die sie da nehmen müssen, weil die Sprache so fest verankert ist in der Welt der nominativen Typisierung. Man muß wieder irgendwelche Interfaces definieren/verwenden, die eine Methode beinhalten (Comparable zB). Lambdas sind also nur Syntax Sugar, um sich das explizite Erzeugen anonymer Klassen usw. zu ersparen. Funktionstypen per se existieren weiterhin nicht.
C# hat Delegates (und im übrigen kein Type Erasure, welches auch ein Riesenproblem von Java ist). C# hat auch bereits Lambda, und das betreibt keinen solchen Unsinn.
C++ hat Funktionspointer, Methodenpointer, Funktoren, sowie eine generische Kapselung dieser Drei unter dem Namen "Function Objects". Siehe boost.function bzw. tr1 function. Wenn man das mal verwendet hat, will es nicht missen. C++0x führt auch lambda-Ausdrücke ein, welche zwar ebenfalls nur Syntax Sugar für das Definieren eines Funktors, jedoch viel mächtiger sind als Java-Lambda, da es eben in C++ Function Objects gibt.
Von den dynamischen Sprachen (Python, Ruby, Javascript ..) gar nicht zu reden.
- Chromanoid
- Moderator
- Beiträge: 4273
- Registriert: 16.10.2002, 19:39
- Echter Name: Christian Kulenkampff
- Wohnort: Lüneburg
Re: Ich hasse Java
Naja Sachen wie Type Erasure und das ganze nur als "Syntax Sugar" umzusetzen haben ja schon ihren Grund. Wenn man das einfach so fallen lässt, kann man gleich ne neue Sprache entwickeln.
- Aramis
- Moderator
- Beiträge: 1458
- Registriert: 25.02.2009, 19:50
- Echter Name: Alexander Gessler
- Wohnort: 2016
- Kontaktdaten:
Re: Ich hasse Java
Stimmt, wieso hat man das nicht schon lange getan? Ach moment, ich sehe gerade, man hat es ja getan und das sogar schon ziemlich oft :-)Wenn man das einfach so fallen lässt, kann man gleich ne neue Sprache entwickeln.
- Chromanoid
- Moderator
- Beiträge: 4273
- Registriert: 16.10.2002, 19:39
- Echter Name: Christian Kulenkampff
- Wohnort: Lüneburg
Re: Ich hasse Java
Exakt. Und trotzdem ist Java noch ziemlich angesagt. Scala Evangelisten beschwören jetzt schon ziemlich lange die Entwicklergemeinschaft. Auch die C# Vertreter sind ja nicht auf den Mund gefallen. Java wird weiterhin sehr gerne eingesetzt und das trotz der Verwendbarkeit von Java Bibliotheken in Scala und ähnlichen Bemühungen.
Re: Ich hasse Java
Ich dachte die Lambdas wären auf Java 8 verschoben worden - und nicht in Java 7 enthalten, das in ein paar Tagen erscheint?!
Ach egal, bin auch schon auf Groovy umgeschwenkt...
Ach egal, bin auch schon auf Groovy umgeschwenkt...
- Chromanoid
- Moderator
- Beiträge: 4273
- Registriert: 16.10.2002, 19:39
- Echter Name: Christian Kulenkampff
- Wohnort: Lüneburg
Re: Ich hasse Java
ja da hast du glaube ich recht. insgesamt kommt gar nicht viel dazu. spontan fällt mir try with resources (wohl die nützlichste neuerung), switch mit strings und catchen von ähnlichen exceptions in einem block ein.
- dv
- Beiträge: 51
- Registriert: 15.09.2002, 17:46
- Benutzertext: Ugauga.
- Alter Benutzername: dv
- Wohnort: Südamerikanischer Dschungel
- Kontaktdaten:
Re: Ich hasse Java
Java wird mMn aus folgenden Gründen eingesetzt:Chromanoid hat geschrieben:Exakt. Und trotzdem ist Java noch ziemlich angesagt. Scala Evangelisten beschwören jetzt schon ziemlich lange die Entwicklergemeinschaft. Auch die C# Vertreter sind ja nicht auf den Mund gefallen. Java wird weiterhin sehr gerne eingesetzt und das trotz der Verwendbarkeit von Java Bibliotheken in Scala und ähnlichen Bemühungen.
- es gibt eine Riesenmenge an Javaprogrammierern
- der Mythos, daß Java alle Speicher- und Ressourcenleakprobleme löst, hält sich hartnäckig
- man kann Java gut zusammen mit CASE-Tools einsetzen (ob diese überbewertet sind, ist eine andere Diskussion)
- vor allem im Serverbereich gibt es bereits riesige Javacodebases, die man nicht so einfach auf irgendwas anderes umstellen kann/will (da es eine Menge Geld kostet)
- für Android entwickelt man in Java (allerdings ist es auch möglich, native Apps zu entwickeln)
Merke: wir reden hier nicht von "coolness". Es ist nicht "cool", wenn eine Sprache Lambda hat zB - es ist ein essentielles Feature heutzutage. Ruby gilt als "cool". Und diese Einstellung ist es, die dafür sorgt, daß die Qualität vieler Rubyprojekte ... bedenklich ist. Dokumentation inklusive dokumentierte Grenzfälle, ausgiebiges Testen, was ist das - aber hauptsache, der Code verwendet Rubyfeatures in einer originellen Art und Weise, mit der man angeben kann...
- Chromanoid
- Moderator
- Beiträge: 4273
- Registriert: 16.10.2002, 19:39
- Echter Name: Christian Kulenkampff
- Wohnort: Lüneburg
Re: Ich hasse Java
Ich halte Java für wesentlich verständlicher und leichter zu lernen als die meisten anderen Sprachen. Verzichtet man auf Generics (die ja auch nicht besonders kompliziert sind), kann man das ganze ziemlich schnell erklären.
Java ist ziemlich performant und kommt bei diversen Benchmarks meist direkt hinter den nativen Sprachen (auf Unix Systemen) siehe z.B. http://shootout.alioth.debian.org/
Java wird durch sehr viele Firmen sehr gut unterstützt. GWT, Android und andere Java-Entscheidungen von Google zeigen, dass Java auch auf längere Sicht als eine Sprache der Wahl betrachtet wird.
Aber selbst wenn Java irgendwann ins Abseits gerät, bleibt die JVM eine der besten VMs auf dem Markt. Viele Java Alternativen wie Scala, JRuby, Jython, Clojure, Groovy usw. laufen auf ihr, daher ist Java Knowhow nie falsch, denn das meiste lässt sich auf andere Sprachen übertragen.
Die größten Vorteile, die ich persönlich von Java habe, sind die extrem riesige gut lesbare Codebase im Enterprise-Bereich, die bequemen IDEs, Test- und Build-Systeme (ja mit Maven konnte ich mich jetzt auch anfreunden und bin begeistert davon :)) und natürlich der tägliche Umgang damit (im Job). Die riesige Codebase kann es nicht allein ausmachen, da man mit Scala und Co. diese Codebase nutzen kann.
Clientseitig finde ich WPF oder Flash besser. Für Spiele werde ich wohl nur noch Flash (oder UDK/Unity) benutzen und bei anderen Anwendungen bin ich mir nicht sicher. Mal sehen was jetzt aus JavaFX und anderen Databinding Geschichten für Java wird. Ich bin mir aber sowieso nicht sicher, ob ich mich da überhaupt entscheiden muss. Wenn es eine wirklich große Anwendung werden soll, würde ich wohl eher auf Eclipse oder Netbeans SDKs setzen und bei kleineren Sachen ist GWT (im Grunde ja eigentlich auch eher Client als Webseite) meine Wahl.
BTW hier mal eine interessante Sache zu Oracle vs Google http://java.dzone.com/news/oracle-v-google-possible
Und hier nochmal die Neuerungen im Überblick: http://java.dzone.com/articles/moving-java-forward
Java ist ziemlich performant und kommt bei diversen Benchmarks meist direkt hinter den nativen Sprachen (auf Unix Systemen) siehe z.B. http://shootout.alioth.debian.org/
Java wird durch sehr viele Firmen sehr gut unterstützt. GWT, Android und andere Java-Entscheidungen von Google zeigen, dass Java auch auf längere Sicht als eine Sprache der Wahl betrachtet wird.
Aber selbst wenn Java irgendwann ins Abseits gerät, bleibt die JVM eine der besten VMs auf dem Markt. Viele Java Alternativen wie Scala, JRuby, Jython, Clojure, Groovy usw. laufen auf ihr, daher ist Java Knowhow nie falsch, denn das meiste lässt sich auf andere Sprachen übertragen.
Die größten Vorteile, die ich persönlich von Java habe, sind die extrem riesige gut lesbare Codebase im Enterprise-Bereich, die bequemen IDEs, Test- und Build-Systeme (ja mit Maven konnte ich mich jetzt auch anfreunden und bin begeistert davon :)) und natürlich der tägliche Umgang damit (im Job). Die riesige Codebase kann es nicht allein ausmachen, da man mit Scala und Co. diese Codebase nutzen kann.
Clientseitig finde ich WPF oder Flash besser. Für Spiele werde ich wohl nur noch Flash (oder UDK/Unity) benutzen und bei anderen Anwendungen bin ich mir nicht sicher. Mal sehen was jetzt aus JavaFX und anderen Databinding Geschichten für Java wird. Ich bin mir aber sowieso nicht sicher, ob ich mich da überhaupt entscheiden muss. Wenn es eine wirklich große Anwendung werden soll, würde ich wohl eher auf Eclipse oder Netbeans SDKs setzen und bei kleineren Sachen ist GWT (im Grunde ja eigentlich auch eher Client als Webseite) meine Wahl.
BTW hier mal eine interessante Sache zu Oracle vs Google http://java.dzone.com/news/oracle-v-google-possible
Und hier nochmal die Neuerungen im Überblick: http://java.dzone.com/articles/moving-java-forward
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Ich hasse Java
Wenn wir hier mit Performance und Coolness argumentieren, sollte ich wohl alles nur noch in Assembler schreiben.
Wiedemauchsei – ich hatte beim letzten Mal noch was vergessen:
Wiedemauchsei – ich hatte beim letzten Mal noch was vergessen:
- CodingCat
- Establishment
- Beiträge: 1857
- Registriert: 02.03.2009, 21:25
- Wohnort: Student @ KIT
- Kontaktdaten:
Re: Ich hasse Java
Und Krishty war so nett, mir auch noch welche zu machen: :D
Zuletzt geändert von CodingCat am 13.07.2011, 21:09, insgesamt 1-mal geändert.
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
- Chromanoid
- Moderator
- Beiträge: 4273
- Registriert: 16.10.2002, 19:39
- Echter Name: Christian Kulenkampff
- Wohnort: Lüneburg
-
- Establishment
- Beiträge: 201
- Registriert: 07.07.2010, 13:00
- Kontaktdaten:
Re: Ich hasse Java
Ich bin mir nicht so sicher, ob man C++ wirklich da vergleichen kann. Kein Compiler ist irgendwie wirklich (hoffentlich bald Standard) konform. Allerdings wenn man nach Coolness-Faktor geht, dann muss man Haskell nehmen. Da bekommt man richtige Lambdas, anstatt nur so pseudo-Dinger.dv hat geschrieben:Java wird mMn aus folgenden Gründen eingesetzt:Chromanoid hat geschrieben:Exakt. Und trotzdem ist Java noch ziemlich angesagt. Scala Evangelisten beschwören jetzt schon ziemlich lange die Entwicklergemeinschaft. Auch die C# Vertreter sind ja nicht auf den Mund gefallen. Java wird weiterhin sehr gerne eingesetzt und das trotz der Verwendbarkeit von Java Bibliotheken in Scala und ähnlichen Bemühungen.Das alles sind natürlich verständliche, pragmatische Gründe, die jedoch keine Argumentation für die Sprache selbst liefern. Und da es ist nunmal nicht zu übersehen, daß Java von C# in Punkto Features überholt wurde, genau wie von fast allen anderen Sprachen (ja, auch von C++). Wir reden hier nicht von reinem Syntaxsugar, sondern von doch recht schwerwiegenden Dingen wie eben schon genannt die Delegates, Lambda, Closures, echte Generizität.
- es gibt eine Riesenmenge an Javaprogrammierern
- der Mythos, daß Java alle Speicher- und Ressourcenleakprobleme löst, hält sich hartnäckig
- man kann Java gut zusammen mit CASE-Tools einsetzen (ob diese überbewertet sind, ist eine andere Diskussion)
- vor allem im Serverbereich gibt es bereits riesige Javacodebases, die man nicht so einfach auf irgendwas anderes umstellen kann/will (da es eine Menge Geld kostet)
- für Android entwickelt man in Java (allerdings ist es auch möglich, native Apps zu entwickeln)
Merke: wir reden hier nicht von "coolness". Es ist nicht "cool", wenn eine Sprache Lambda hat zB - es ist ein essentielles Feature heutzutage. Ruby gilt als "cool". Und diese Einstellung ist es, die dafür sorgt, daß die Qualität vieler Rubyprojekte ... bedenklich ist. Dokumentation inklusive dokumentierte Grenzfälle, ausgiebiges Testen, was ist das - aber hauptsache, der Code verwendet Rubyfeatures in einer originellen Art und Weise, mit der man angeben kann...
Imaging-Software und bald auch Middleware: http://fd-imaging.com
-
- Establishment
- Beiträge: 117
- Registriert: 17.09.2002, 17:27
- Echter Name: Manuel Hofmann
- Wohnort: Rottweil
- Kontaktdaten:
Re: Ich hasse Java
Hi !
Hihi ! Hab mal diesen alten Thread rausgekramt.
Ursprünglich fand ich Java auch schlecht (und zwar so, dass es mit dem Thread - Topic korreliert :D ). Grundsätzlich ist meine Lieblingssprache C#.
In letzter Zeit hat sich meine Meinung zu JAVA etwas verändert. Ich finde nun, dass es ist eine gute Alternative zu C# ist, welche allerdings nicht an C# rankommt. So.
Ich finde die GUI - Programmierung unter JAVA sehr ätzend.
Gruss
RedGuy
Hihi ! Hab mal diesen alten Thread rausgekramt.
Ursprünglich fand ich Java auch schlecht (und zwar so, dass es mit dem Thread - Topic korreliert :D ). Grundsätzlich ist meine Lieblingssprache C#.
In letzter Zeit hat sich meine Meinung zu JAVA etwas verändert. Ich finde nun, dass es ist eine gute Alternative zu C# ist, welche allerdings nicht an C# rankommt. So.
Ich finde die GUI - Programmierung unter JAVA sehr ätzend.
Gruss
RedGuy
homepage: http://ncores.de
Re: Ich hasse Java
Lieber dumm fragen, als dumm bleiben!
https://jonathank.de/games/
https://jonathank.de/games/
- xq
- Establishment
- Beiträge: 1589
- Registriert: 07.10.2012, 14:56
- Alter Benutzername: MasterQ32
- Echter Name: Felix Queißner
- Wohnort: Stuttgart & Region
- Kontaktdaten:
Re: Ich hasse Java
Absolut. Immer wieder unterhaltsam, durchzulesen.... Ich sollte davon ein paar im Büro aufhängen
War mal MasterQ32, findet den Namen aber mittlerweile ziemlich albern…
Programmiert viel in Zig und nervt Leute damit.
Programmiert viel in Zig und nervt Leute damit.
Re: Ich hasse Java
alle über git :D
Lieber dumm fragen, als dumm bleiben!
https://jonathank.de/games/
https://jonathank.de/games/