heise Developer hat keine Ahnung!
-
asc schrieb:
Kenner des C++ schrieb:
Grund: https://www.heise.de/newsticker/meldung/Programmiersprache-des-Jahres-ist-Java-3583597.html
Kannst du eigentlich auch Argumentieren? Aus welchen Grund soll dieser Artikel den darlegen das heise Developer keine Ahnung hätte. Hast du den Artikel überhaupt gelesen? Und wenn ja, was stört dich konkret daran?
Weil C++14 Java in allen Punkten klar überlegen ist!
-
Heise Developer schrieb:
Doch was ist mit C und JavaScript, die fast immer in der Spitzengruppe der Programmiersprachen-Rankings zu finden sind. Gegen Ersteres spricht die komplexe Syntax, deren Vermittlung an Fortbildungseinrichtungen mehr Arbeit voraussetzt.
Heise.Developer hat keine Ahnung.
Weder hat C eine "komplexe" Syntax, noch gibt es "Fortbildungseinrichtungen", die professionelles C lehren.
-
Kenner des C++ schrieb:
Weil C++14 Java in allen Punkten klar überlegen ist!
Okay, ich habe verstanden. Du hast keine Ahnung.
Nein, Java ist nicht meine bevorzugte Sprache. Aber wer meint das eine Sprache X einer Sprache Y klar überlegen ist, ohne dies zu begründen, zeigt jedenfalls nicht das er weiß wovon er spricht. Und Java ist nicht ohne Grund sehr verbreitet. Es kommt sehr stark auf den Anwendungsfall an und da ist weder C++ noch Java noch eine beliebige andere Programmiersprache immer überlegen.
Eine typische Businessanwendung die auf das Web aufbaut wäre C++ jedenfalls nicht meine erste Wahl. Ebenso wie ich eine hochperformante, hardwarenahe Anwendung nicht in Java schreiben würde.
-
Wutz schrieb:
Weder hat C eine "komplexe" Syntax,...
Wobei C dennoch keine leichte Sprache ist.
Wutz schrieb:
...noch gibt es "Fortbildungseinrichtungen", die professionelles C lehren.
Der Begriff "Fortbildungseinrichtungen" mag nicht ideal sein, doch es gibt viele Anbieter mit Kursen auch zu C, und durchaus auch im professionellen Bereich.
-
Man kann mir sicherlich nicht nachsagen, das ich C++ hasse... aber C++ und auch C++14 ist definitiv nicht Java überlegen. Alleine die Header, die dem DRY-Prinzip widersprechen, sind ein Kriterium wo C++-Fans mal den Ball flach halten sollten.
Klar, Java selbst fehlt z.B. die Const-Correctness oder dumm ist, das alle Funktionen virtual sind. Aber daran sieht man, das jede Sprache so seine guten und schlechten Seiten hat.
Aber Java ist für die meisten Entwicklunsszenarien einfach das unproblematischste Werkzeug. Denn zu einer Programmiersprache gehört auch das Ökosystem! Und da ist Java einfach sehr gut.
Man kann Java auch auf Smartcards einsetzen, und seit es die Bluray gibt (was echt lange her ist!), hat jeder BD-Player auch Java drin... weil die gesamten BD-Menüs nunmal in Java sein. Java findet man also in vielen Embedded-Geräten, wo man es gar nicht vermutet. Und das geht dann weiter über Games (Minecraft) bis hin zu Servern.
Übrigens, die ebay war zu Anfangszeite in C++. Aber Anfang der 2000er wurde es auf Java umgestellt. Das zeigt sehr schön den Wandel und das C++ nunmal selbst bei großen Handelsplattformen, wo viel Traffic und Transaktionen nötig sind, man auch mit Java weiter kommt.
Die Zeiten, wo man C++ machen muss, sind lange vorbei. Es gibt nur noch ganz wenige Gebiete, wo C++ unabkömmlich ist. Sobald man aber eine gewisse Low-Level-Stufe verlassen hat, machem die wenigsten freiwillig C++. Selbst Game-Engines sagen "Hier hast du zwar eine Engine in C++, aber du kannst dein Game in Lua o.ä. entwickeln!".
Viele C++-Fans (Fan kommt von Fanatiker) kommen mir so vor, als ob sie sich an C++ festbeißen, weil sie denken damit cooler zu sein. Und dabei zählt bei der Software-Entwicklung nur eines: das was für den User/Kunden raus kommt! Und nicht ob der Code cool und nur für den Kreis der C++-Erleuchteten zu verstehen ist.
-
Ich fand den Artikel auch sehr "dumm" und provokativ. Vor allem, hat sich da nicht großartig was geändert. Wieso sollte Java die Sprache des Jahres sein? Hat sich dieses oder letztes Jahr überhaupt irgendwas gravierendes an der Sprache oder dem Ökosystem geändert?
@Artchi: ich weiß nicht, ob ich ein C++ Fan bin. Irgendwie so ein bisschen schon. Jedenfalls brauche und will ich Java nicht. Das Ökosystem ist ganz nett, ja. Und ich würde es auch bevorzugen, wenn ich Webanwendungen schreiben würde, was ich zum Glück nicht muss. Aber die Sprache ist einfach in jeglicher Hinsicht komplett vereinfach und kastriert worden. Und das will ich nicht. Ich kann ja schon C++, ich brauche keine künstlichen Vereinfachungen für Lernresistente.
-
Grundlegend ist Developer etwas Buzzword-Heischig und grundlegend will Heise verkaufen (Hefte, Werbung für Hardware usw.)
Das ausgerechnet die Syntax bei Java so viel besser sein soll als bei C++, lässt ja schon tief blicken.
(ach und die Hardware soll bald endlich noch schneller..wie war der Spruch?
-> "mit der zunehmend größer werdenden Rechenleistung..", na dann..)Die Handyprogrammierung ging ja ganz gut, nur gab es da eher wenig Lernmaterial (und Forschung), ein, zwei Programmier-Bücher, die waren bald vergriffen und Java selbst war bald veraltet. (das Handy genauso)
-> Gemeint ist offenbar das "neue" Java. (2017: Java 8 - wie, das ist von 2008?)
Java/bzw die VM braucht (für "funktionale" Hilfen) eine komplett andere Sprache und die Editoren Plugins für z.B. Scala oder Clojure.
Was ist Java noch außer zu langsam?
-> zu Inkombatibel.
-> zu gefährlich (weswegen auf vielen Systemen schon gar keine Runtimes mehr vorinstalliert)auf dieser anderen Computerzeitschriftseite stehen passendere Argumente:
http://www.chip.de/downloads/Java-Runtime-Environment-64-Bit_42224883.htmlIn einem noch nicht so alten C't Heft war sogar mal ein Artikel darüber, wie man leicht auf Java (wegen der Sicherheitslücken) verzichtet.
Noch eine Heise Seite:
https://www.heise.de/security/dienste/Java-403125.htmlZitat:
Ihre aktuelle Java-Version:
Kein Java aktiviert/installiert
-
-
Manche scheinen hier etwas zu verwechseln: Es geht hier um die Beliebtheit einer Sprache und nicht darum, welche Sprache hier die Beste ist.
Java ist allein wegen Android Vorreiter und es war schon davor sehr populär. Das hat wie gesagt nichts damit zu tun, ob jetzt Java super-duper-toll ist oder nicht. Die Sprache ist populär – fertig!
-
nachtfeuer schrieb:
In einem noch nicht so alten C't Heft war sogar mal ein Artikel darüber, wie man leicht auf Java (wegen der Sicherheitslücken) verzichtet.
Wenn man Java mit C++ vergleicht, dann ist Dir schon klar, dass es den Anwendungsfall, bei dem man bezüglich Java von Sicherheitslücken redet, für C++ gar nicht gibt, oder? Es geht dabei darum, dass man Javaprogramme in einer Sandbox ablaufen lassen kann und Sicherheitslücken können ausgenutzt werden, damit Programme aus dieser Sandbox ausbrechen können. In C++ hat man so einen Sandkasten für Programme gar nicht und somit auch 0 Sicherheit.
-
Gregor, da muss ich dir leider auch widersprechen... auch wenn ich das Java-Bashing hier auch nicht verstehen kann.
Aber bei dem Java-Verzicht geht es ja um Java-Applets, also im Webbrowser das Java-Plugin. Und das C++-Pendant dazu ist bzw. war ActiveX. Und wie der Versuch ausgegangen ist, wissen wir ja.
Der Witz ist, das kannst du mit jeder Sprache haben: ActionScript? Ja, Flash! (sind ja ActionScript-Applets im Webbrowser) C#? Ja, Silverlight! (sind ja auch C#-Applets im Webbrowser)
Und ActiveX ist halt eine Plug-in-Technik, die auch in den Webbrowsern lief und auch ausbrechen konnte.
Es ist natürlich total blödsinnig Java als sicherheitsrisiko zu betiteln. Weil das Thema bei Standalone Java-Anwendungen gar nicht auftreten kann. Genauso wie C++-Standalone-Anwendungen auch nicht das Thema haben.
Übrigens, natürlich gibt es genug Sandbox-Techniken auch für C++ bzw. native Anwendungen. Sandboxie als Beispiel.
-
Zeus schrieb:
Der heise-Test bezieht sich sicherlich auf Java im Webbrowser. Und dürfte somit alles richtig sein.
Es geht nicht darum, ob kein Java installiert ist. Das kann hoffentlich das JavaScript der heise.de-Website nicht feststellen... so von wegen Sicherheitslücke deiner JS-Runtime... sonst wäre es ja nicht besser als die Sicherheistlücken von Flash und JavaApplets. :p
-
Artchi schrieb:
Zeus schrieb:
Der heise-Test bezieht sich sicherlich auf Java im Webbrowser. Und dürfte somit alles richtig sein.
Es geht nicht darum, ob kein Java installiert ist. Das kann hoffentlich das JavaScript der heise.de-Website nicht feststellen... so von wegen Sicherheitslücke deiner JS-Runtime... sonst wäre es ja nicht besser als die Sicherheistlücken von Flash und JavaApplets. :pDarum geht es doch garnicht o_O
-
Ehm, dann schreibe etwas zu deinem Bild! sonst darfst du meine Interpretation nicht in Frage stellen.
-
am besten ist der satz:
Mit der zunehmend größer werdenden Rechenleistung fallen die Schwächen der JVM (Java Virtual Machine) immer weniger ins Gewicht.
unter c schreibe ich auch immer solche sachen
unsigned short int i; for(i=1;i>0;i++);
fällt ja mit der zunehmend größer werdenden rechenleistung immer weniger ins gewicht.
für die eigentlich unnötigen rechenkapazitäten kann man ja einfach ein, zwei kernkraftwerke mehr bauen, da schafft man auch noch arbeitsplätze.
-
Naja, Sch*** die du da von dir gibst.
-
Kannst du das auch begründen, oder kannst du nur dumm rumpöbeln?
-
Soweit ich weiß verfasst Heise Developer die Artikel bewusst so, dass viele Trolle anschlagen.
-
naja ich hatte jetzt nicht den eindruck, dass man mit dem artikel bewusst etwas falsches mitteilen wollte. immerhin war man bei oracle so schlau dafür zu sorgen, dass man als informatiker bei mir an der fh als erstes klickibunti mit java lernt, sodass mir das mit der beliebtheit nicht falsch vorkommt, und das gerede über die angebliche flexibilität ist ja auch nichts neues.
jedenfalls bin ich der meinung, dass eine angenommene prozessorleistung von 1W für die virtuelle maschine gegenüber hocheffezientem c-code bei 1 mrd geräten ungefähr 1GW ausmacht und das ist imho ein überflüssiges atomkraftwerk oder meinetwegen auch ein überflüssiger offshore-windpark.
ps: für mich ist common lisp die sprache des jahres 2016, aber die wird da gar nicht erwähnt.
-
HansKlaus schrieb:
...immerhin war man bei oracle so schlau dafür zu sorgen, dass man als informatiker bei mir an der fh als erstes klickibunti mit java lernt,...
Die Sprachauswahl im Studium wird in der Regel nicht durch den Hersteller vorgegeben. Bei einigen Unis ist sie sogar Dozentenabhängig, die Vorgabe ist dort nicht die Sprache sondern ein thematischer Schwerpunkt (z.B. Prozedurale Programmierung, Objektorientierte Programmierung, Skriptprogrammierung...). Die Sprachauswahl fällt in dem Fall unter "Freiheit in Forschung und Lehre".
Und als der Java-Hype begann hatten viele Studiengänge noch kein Java angeboten.
HansKlaus schrieb:
...jedenfalls bin ich der meinung, dass eine angenommene prozessorleistung von 1W für die virtuelle maschine gegenüber hocheffezientem c-code bei 1 mrd geräten ungefähr 1GW ausmacht und das ist imho ein überflüssiges atomkraftwerk oder meinetwegen auch ein überflüssiger offshore-windpark.
Das mag ja alles stimmen, nur wählt man die Sprache in der Regel nicht nach Energieeffizienz, sondern nach anderen Kritierien wie der Zielplattform, der Entwicklungszeit bezogen auf ein Projekt, den verfügbaren Programmierern...