Java...



  • Write less code: Comparisons of program metrics (class counts, method counts, and so on) suggest that a program written in the Java programming language can be four times smaller than the same program written in C++.

    Das kann gar nicht sein. Meinem Empfinden nach ist es gerade so, dass C++ kürzeren Code produziert. 😕 😮



  • Ich habe den schweren Verdacht, dass das stark vom Programmierer und dem zu lösenden Problem abhängt. 😉



  • Java-Code kann sogar 1000 mal kürzer sein, nämlich dann wenn deren Standardbibliothek das schon anbietet. 😃



  • Quelle?



  • Qualle?



  • Eisflamme schrieb:

    Quelle?

    Vielleicht schaffst du es, das Zitat zu kopieren und in eine Suchmaschine einzufügen? 🙂

    cooky451 schrieb:

    Java-Code kann sogar 1000 mal kürzer sein, nämlich dann wenn deren Standardbibliothek das schon anbietet. 😃

    Ja, das stimmt schon. 😃

    Dobi schrieb:

    Ich habe den schweren Verdacht, dass das stark vom Programmierer und dem zu lösenden Problem abhängt. 😉

    Klar! Das hängt von verschiedenen Dingen ab. Aber gerade deswegen sollte man (oder Oracle) nicht einfach pauschal solche Dinge verkünden.



  • Sone schrieb:

    Klar! Das hängt von verschiedenen Dingen ab. Aber gerade deswegen sollte man (oder Oracle) nicht einfach pauschal solche Dinge verkünden.

    Die Marketingleute von Java waren schon immer ganz schlimme Rosstäuscher.
    Muss ja auch, da ihr Produkt nichts leistet.



  • volkard schrieb:

    Sone schrieb:

    Klar! Das hängt von verschiedenen Dingen ab. Aber gerade deswegen sollte man (oder Oracle) nicht einfach pauschal solche Dinge verkünden.

    Die Marketingleute von Java waren schon immer ganz schlimme Rosstäuscher.
    Muss ja auch, da ihr Produkt nichts leistet.

    wie damals bei VB und nach java mit dem VB mit C syntax, ich bin gespannt was die naechste eierlegendewollmilchsau des marketings sein wird, was den studis verabreicht wird 🙂



  • Du empörst Dich über eine Aussage, willst, dass sie diskutiert wird, reißt sie aber aus einem womöglichen Kontext, zu dem nicht nur gehört, wo es publiziert wurde, sondern auch, wer es gesagt hat (!). Aber du forderst, dass der Leser dessen sich selbst die Quelle zurechtsucht, obwohl Du sie zur Verfügung hast? Komischer Stil. Kongruent zum generellen Sone-Stil jedoch, vor allem mit dem Nachsatz zu meiner Frage. Das soll gar nicht kritisch gemeint sein: Respekt!

    Zum Thema: Die Frage kann man in jeder Dimension diskutieren und so zu zig unterschiedlichen Meinungen kommen. Das pauschal zu diskutieren ergibt überhaupt keinen Sinn, außer man will eine Glaubensdiskussion entfachen 🙄 Wer darauf noch Lust hast oder darin Sinn sieht, viel Spaß...

    Flamewars gehören aber imo nicht in "Rund um die Programmierung".



  • Aber du forderst, dass der Leser dessen sich selbst die Quelle zurechtsucht, obwohl Du sie zur Verfügung hast?

    Ja, denn das zu Googlen ist für Menschen mit geistigen Behinderungen natürlich nicht möglich. Ich werde nächstes mal auch an dich denken. 🙂 👍

    Komischer Stil. Kongruent zum generellen Sone-Stil jedoch, vor allem mit dem Nachsatz zu meiner Frage. Das soll gar nicht kritisch gemeint sein: Respekt!

    Ach, du schmeichelst mir, aber dein Sarkasmus ist auch nicht von schlechten Eltern! 😃 👍

    Du empörst Dich über eine Aussage, willst, dass sie diskutiert wird, reißt sie aber aus einem womöglichen Kontext, zu dem nicht nur gehört, wo es publiziert wurde, sondern auch, wer es gesagt hat (!)

    Nein, dieser Kontext ist vollkommen unwichtig. Es geht um die schlichte, pauschale Aussage: Der Code kann kürzer sein. Und ob im Allgemeinen der Code wirklich kürzer ist.

    Und nicht, von welcher Website oder welchem Postulanten oder sonst was. Das kann man sich, wie ich jetzt zum zweiten oder wievielauchimmersten mal sage, wenn man es wichtig findet, ergoogeln.

    Die Frage kann man in jeder Dimension diskutieren und so zu zig unterschiedlichen Meinungen kommen.

    Na genau deswegen machen wir es doch 😃
    Ich will einfach hören, was die anderen dazu zu sagen haben. So lernt man was neues.

    Flamewars gehören aber imo nicht in "Rund um die Programmierung".

    Und wieso genau stiftest du sie dann an? Ich verstehe dich nicht, denn du bist in keinster weise eloquent. Wieso versuchst du dich dann immer in solche Sachen zu verwickeln? 😕

    Für mich wirkst du wie ein eitler, polemischer Rabulist. 👎



  • volkard schrieb:

    Sone schrieb:

    Klar! Das hängt von verschiedenen Dingen ab. Aber gerade deswegen sollte man (oder Oracle) nicht einfach pauschal solche Dinge verkünden.

    Die Marketingleute von Java waren schon immer ganz schlimme Rosstäuscher.
    Muss ja auch, da ihr Produkt nichts leistet.

    Das ist aber noch längst nicht alles. Es kommen auch wieder ständig komische Argumente auf, wie: http://www.eweek.com/imagesvr_ce/eweek/images/stories/slideshows/037412_javavscpluscplus/10.jpg

    Multi-Threading hatte C++ schon lange (Boost/Std-Thread / WinAPI-Threads), Smart-Pointer werden längst nicht so oft genutzt wie bspw. Stack-Objekte die ja viel schneller sind, und GCs sind (wie auch in den späteren Slides oder in diesem Dokument zu sehen 🙄 ) nicht ohne Haken.



  • Sone schrieb:

    Nein, dieser Kontext ist vollkommen unwichtig. Es geht um die schlichte, pauschale Aussage: Der Code kann kürzer sein. Und ob im Allgemeinen der Code wirklich kürzer ist.

    Natürlich KANN der Code kürzer sein. Allein, weil man keine Header Dateien braucht, die Standardlibrary sehr umfangreich ist, man selten viel Glue Code braucht, wenn man 3rd party libraries integriert, oder viele Frameworks auf Reflection aufbauen und man durch ORM oder Serialisierung viel Code sparen kann, den man in C++ manuell schreiben müsste.
    Auf der anderen Seite verleitet der in der Java Welt übliche Stil dazu, viel Boilerplate Code zu schreiben, z.B. weil man zig DTO Klassen schreibt.
    Also, die pauschale Aussage, dass der Code kürzer sein KANN ist auf jeden Fall richtig. Ob ers im Allgemeinen auch ist, ist schwer zu sagen und ich halte die Diskussion für ziemlich sinnlos. Würde aber dazu tendieren zu sagen, dass bei den Programmen an denen ich arbeite der Java Code tatsächlich kürzer wäre. Aber nicht vier mal.



  • Java Programme können 4 mal kürzer sein als C++. Manchmal ist es so, manchmal anders herum. Und was für eine sinnfreie Aussage. Wenn Programme schneller laufen, weniger Speicher verbrauchen, gut wartbar sind oder skalierbar. Das sind Vorteile. Aber wie kurz oder lang der Code ist, ist kein Qualitätskriterium. Das kann ein Hinweis sein. Längerer Code kann schlechter wartbar sein.

    Vielleicht sollten wir und Gedanken machen, kürzere Variablen- und Funktionsbezeichner zu verwenden. Ganz kurze stehen 52 zur Verfügung (a-z und A-Z). Dann wird der Code kürzer, aber ganz bestimmt nicht besser. 🙄



  • Meine güte. Die müssen halt ihr Produkt vermarkten. Ich würde die Aussage nicht so ernst nehmen. Es gab damals einen regelrechten Java-Boom, unter anderem auch deswegen weil deren Marketingfuzzis so richtig auf die Kacke gehauen haben.
    Firmen sind teilweise panisch auf Java umgestiegen. Heute bereuen es sicherlich einige...



  • Ja, aber was mich interessiert: Welche Idiome/Konstrukte lassen sich in Java "einfacher", kürzer implementieren?



  • Alles was bereits builtin ist, beispielsweise Reflections, Multithreading. Alles wofuer es vorgefertigte Konstrukte gibt, beispielsweise Datenbankanbindung.



  • knivil schrieb:

    Alles was bereits builtin ist, beispielsweise Reflections.

    Aber Reflection gibt es in C++ gar nicht.
    Edit: Na gut, solche Workarounds...

    Multithreading

    Hä? Das ist doch auch schon "builtin", also die Standard-Lib gibt doch genug her.



  • Sone schrieb:

    Multithreading

    Hä? Das ist doch auch schon "builtin", also die Standard-Lib gibt doch genug her.

    Ach, du meinst Multithreading hoert bei std::thread auf? Was mit Concurrent Queues, Reader-Writer-Locks, Monitoren, eigenes Scheduling und andere High-Level-Synchronisationsmechanismen? All das ist einfacher, weil es schon da ist.



  • tntnet schrieb:

    Vielleicht sollten wir und Gedanken machen, kürzere Variablen- und Funktionsbezeichner zu verwenden. Ganz kurze stehen 52 zur Verfügung (a-z und A-Z). Dann wird der Code kürzer, aber ganz bestimmt nicht besser. 🙄

    Das machen wir. Und das Lehrbuch dazu nennen wir "C++ von A bis Z".



  • Mechanics schrieb:

    Auf der anderen Seite verleitet der in der Java Welt übliche Stil dazu, viel Boilerplate Code zu schreiben, z.B. weil man zig DTO Klassen schreibt.

    Java verleitet zu DI. Da bin ich recht sicher.


Anmelden zum Antworten