C/C++ wieder im kommen?
-
Hallo,
hab heute mal die Stellenangebote durchgeschaut, und dabei ist mir aufgefallen:
Der Anteil von C/C++ Stellen ist wieder recht hoch, ca 1/3 C/C++, 1/3 .NET, und dann halt der Rest wie Java, PHP und sonstiges.
Kann mich erinnern, dass es Zeiten gab, wo hauptsächlich .Net und C# gesucht wurde.Eure Einschätzung?
-
Yes, your suspicions are correct. Microsoft is pushing C++ to come back and become more popular.
-
-
Dieser Thread wurde von Moderator/in SeppJ aus dem Forum C++ (auch C++0x und C++11) in das Forum Beruf und Ausbildung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
-
ewqeqw schrieb:
hab heute mal die Stellenangebote durchgeschaut, und dabei ist mir aufgefallen:
Der Anteil von C/C++ Stellen ist wieder recht hoch, ca 1/3 C/C++, 1/3 .NET, und dann halt der Rest wie Java, PHP und sonstiges.
Kann mich erinnern, dass es Zeiten gab, wo hauptsächlich .Net und C# gesucht wurde.Eure Einschätzung?
Dass Java und PHP keine wirklichen Dauerbrenner sind ist abzusehen. C# hat den Hype von Java nicht mehr erreicht, aber ich denke, dass nach Java auch mehr Ernüchterung eingetreten ist als nach Delphi, dessen Nivellierung sich im Java-Hype verloren hat.
Wer in den 90ern auf C++ gesetzt hat, hat Weiterentwicklung erfahren. Wer auf Delphi gesetzt hat, hat verloren. Wer auf Visual Basic gesetzt hat, hat verloren. Wer auf Java gesetzt hat, merkt dass die Geschichte ausläuft. Wer auf C# gesetzt hat, merkte, dass es gar nicht Fahrt aufnehmen würde, wenn Microsoft es nicht derart prominent präsentieren würde. Und jeder sieht, dass die Leute, die von Anfang an auf C++ gesetzt haben, zwar häufig belächelt oder ausgelacht wurden, aber nie ernsthaft in Zugzwang waren.Meine Einschätzung: C++ war nie weg. Es sind mehr Spieler dazu gekommen, junge begeisterungsfähige Menschen, die auch lautstark für ihre Sache eingetreten sind. Lautstärke verzerrt ein Bild.
Ich habe als Java-Entwickler gearbeitet und als C#-Entwickler. Und immer habe ich (mindestens) auch C++ programmiert. Als C#-Entwickler habe ich gestern erstmals wieder C# gesehen. Es war ein Feiertag und ich habe mir privat mal das Studio 2012 installiert... seit 2 1/2 Jahren habe ich C# im Job nicht mehr benötigt, obwohl das bei meiner Einstellung noch der Einstellungsgrund war und C++ Kenntnisse als wünschenswert galten.
Wer auf C++ setzt, wird auch in den nächsten 10 Jahren nicht falsch liegen.
-
-
Xin schrieb:
Wer auf C++ setzt, wird auch in den nächsten 10 Jahren nicht falsch liegen.
Es wäre naiv zu glauben, man könne C++ mal einfach so ersetzen, zumal sich die Sprache weiterentwickelt, aber zu glauben, Java sei auch nur ein Hype (gewesen), ist m. A. n. auch nicht besser.
Java ist *die* Sprache was Android-Programmierung angeht, Java läuft auf jedem Blu-Ray-Player, Java wird gerne bei Server- und ERP-Anwendungen benutzt, andere Sprachen wie Scala bauen auf die JVM auf und natürlich wird auch Java als Sprache weiterentwickelt...
-
Steffo schrieb:
Xin schrieb:
Wer auf C++ setzt, wird auch in den nächsten 10 Jahren nicht falsch liegen.
Es wäre naiv zu glauben, man könne C++ mal einfach so ersetzen, zumal sich die Sprache weiterentwickelt, aber zu glauben, Java sei auch nur ein Hype (gewesen), ist m. A. n. auch nicht besser.
Java ist *die* Sprache was Android-Programmierung angeht, Java läuft auf jedem Blu-Ray-Player, Java wird gerne bei Server- und ERP-Anwendungen benutzt, andere Sprachen wie Scala bauen auf die JVM auf und natürlich wird auch Java als Sprache weiterentwickelt...Es gibt eine nach C# konvertierte Version, die schneller als Android ist.
Java läuft auf jedem BluRay-Player, aber auf kaum einer BluRay, weswegen sich Mediaplayer gut verkaufen, die BluRay-Images abspielen können, obwohl sie Java nicht unterstützen. Scala baut auf der JVM auf, weil die JVM da ist. Sollte sich Scala soweit durchsetzen, dass es für einen größeren Markt interessant ist, wird es auch eine IronScala-Version geben. Scala ist Scala, nicht Java, auch wenn es zur JVM kompiliert.
Java entwickelt sich so langsam, wie keine andere Sprache, die ich kenne.Java ist im Gebrauch. Aber Zukunft sehe ich für Java nicht. Java ist quasi tot, es lebt noch aus seinem Hype heraus. Du wirst anderer Meinung sein. Akzeptiert. Wie der Threadstarter schon beobachtet, die Stellenanzeigen für C++-Programmierer steigen wieder. Als ich in den freien Markt ging, war es wie vor kurzem mit Java: Alle wollten Delphiprogrammierer. Vor ein paar Jahren wollten alle Javaprogrammierer. Nun will kaum mehr einer Delphi-Programmierer. Gib Java nochmal 5 Jahre...
-
Ich bin kein Freund davon über Hypothesen zu diskutieren, deswegen habe ich mir für den 2. November 2017 einen Kalendereintrag gemacht...
-
Naja, die Meinung von Xin ist ja bereits allgemein bekannt.
Dass Java in den nächsten 5-10 Jahren stirbt halte ich für praktisch ausgeschlossen. Auch Delphi musste nicht sterben, das hat Borland komplett verbockt, aber zwischen Delphi und Java besteht immer noch ein Riesenunterschied.
Ob C++ wieder im Kommen ist, weiß ich nicht. Würde mich auch mal interessieren. Ich denke, wenn jemand gut C++ kann und einen entsprechenden Job sucht, wird er ihn auch finden, vor allem wo es kaum noch an Unis/FHs gelehrt wird und es nicht mehr so viel Nachwuchs gibt. Ich glaube eigentlich nicht, dass sich in den letzten Jahren großartig was geändert hat, was die Marktsituation betrifft. Es gibt sehr viele kleine Firmen, die .NET/Java/Ruby/Python machen. Die werden es auch weiterhin machen und C++ interessiert sie nicht die Bohne. Es gibt größere Firmen, die vielleicht schon seit Jahrzehnten ihren größeren Projekte in C++ haben, und die werden sie sich auch weiterentwickeln. Hat sich vielleicht höchstens was bei den Anzeigen geändert, weil die Firmen, die C++ Entwickler jetzt intensiver suchen müssen, weil von den Unis eben nichts mehr nachkommt.
-
Mechanics schrieb:
Naja, die Meinung von Xin ist ja bereits allgemein bekannt.
Vor 10 Jahren klang dieses "Naja..." genauso von den Delphi-Freunden.
Und sie hatten recht. Java war derart gehypt, dass Delphi quasi weggefegt wurde.Mechanics schrieb:
Dass Java in den nächsten 5-10 Jahren stirbt halte ich für praktisch ausgeschlossen. Auch Delphi musste nicht sterben, das hat Borland komplett verbockt, aber zwischen Delphi und Java besteht immer noch ein Riesenunterschied.
Sun hat jetzt schon mehrere Versionen verbockt. Das letzte Mal, dass es mir deutlich aufgefallen ist, ist von 1.4 auf 1.5, seitdem verfolge ich das nicht mehr. Gelegentlich bekomme ich mit, dass Oracle sich nicht gerade beliebt macht. Es geht seinen Weg, langsamer weil aktuell kein Hype im Bereich der statisch typisierten Sprachen ansteht.
Mechanics schrieb:
Ich denke, wenn jemand gut C++ kann und einen entsprechenden Job sucht, wird er ihn auch finden, vor allem wo es kaum noch an Unis/FHs gelehrt wird und es nicht mehr so viel Nachwuchs gibt. ... Hat sich vielleicht höchstens was bei den Anzeigen geändert, weil die Firmen, die C++ Entwickler jetzt intensiver suchen müssen, weil von den Unis eben nichts mehr nachkommt.
Möglich. Microsoft scheint mir auch wieder mehr Richtung C++ zu gehen... C++11 ist da, C++14 in Arbeit, C++17 in Planung. C++ ist derzeit wieder mehr im Gespräch und Java drängt sich "gefühlt" schon länger nicht mehr so auf.
Es wird keinen Umschwung geben, eher eine ganz gemächlichen Wechsel. Und alles kann ganz anders werden, wenn Oracle Lärm macht oder ein neuer Kandidat ins Rennen geht.
-
Die Entwicklung vom C++11 hat 13 Jahre gebraucht.
C++14 sind nichts weiter als Korrekturen und bis C++17 sind es 5 Jahre. Bis dahin hat Oracle 3-4 Java-Versionen veröffentlicht und in 5 Jahren werden auch nicht von einem Tag auf dem anderen vorhandene Java-Software, die weiterentwickelt und gepflegt werden möchten, aussterben. Es sei denn ein Meteorit rast auf die Erde zu oder es passiert sonst irgendein Super-Gau.L. G.
Steffo
-
C++ hat halt den Vorteil, dass es ziemlich universell verwendbar ist, es viel Knowhow gibt, und es sehr portabel ist. Natürlich hat C++ stark eingebüßt. Anfang der 90er war es ja fast die Sprache für alles. Das ist definitiv nicht mehr der Fall. Aber die ganzen C++-Alternativen sind halt oft auf einen Bereich isoliert. Java findet man ja hauptsächlich in irgend welche ERP-Sachen, C# sind halt hauptsächlich Windows-Desktop-Anwendungen, im Web hat C++ nie wirklich Fuß gefasst. Und auch neuere Programmiersprachen, die als C++-Alternativen angepriesen werden, sind halt oft schon limitiert in ihren Anwendungszwecken. Go hat zB einen zwingenden Garbagecollector, was einfach wieder in einigen Bereichen nicht gewünscht ist. Die einzig neuere Sprache die wohl so ähnlich universell wie C++ ist, scheint Rust zu sein. Aber Rust ist noch lange nicht fertig.
Auch was Portabilität angeht, ist C++ einfach ungeschlagen. Wenn es um Endbenutzergeräte geht, dann kann vielleicht noch JavaScript mithalten von der anderen Seite. Aber mit JavaScript hat man halt kaum Zugriff auf native Funktionen. Wenn man dagegen den Kern der Anwendung in C++ schreibt, dann kann man ihn ohne Probleme auf Windows, Linux, OSX, iOS, WindowsPhone, Android benutzen. Für die GUI muss man dann halt oft auf systemspezifische Sprachen wie Objective-C++, Java, oder C# zurück greifen. Aber die Idee eine GUI für alle Systeme zu schreiben hat sich ja eh für Endbenutzerzwecke als Schwachsinn herausgestellt.
Und obwohl C++ keine Websprache ist, so ist es doch erstaunlich, dass es ein zentraler Teil von Webfirmen wie Google, Facebook und co ist.
Auch wenn der Java-Hype vorbei ist, so ist Java natürlich nicht tot. Es ist halt einfach das neue COBOL. Es wird überall in Firmen für langweilige Dinge eingesetzt und es ist nicht wirklich spannend. Wenn man Java als Plattform meint, dann darf man aber Clojure und Scala nicht vergessen.
-
Xin schrieb:
Vor 10 Jahren klang dieses "Naja..." genauso von den Delphi-Freunden.
Ich hab das damals eigentlich genau andersrum wahrgenommen. Die Delphi Entwickler wurden immer als Müslifresser belächelt, die richtigen Männer haben C++ gemacht, und Java war voll der Hype. Und natürlich immer das Argument, C++ ist performanter als Delphi. Damals hab ich viel in Delphi gemacht (noch als Schüler, nicht professionell) und es war in jeder Hinsicht schnell genug und Performance hat mich null interessiert. Seitdem sind die Rechner mindestens 20 mal schneller geworden, und das Argument Performance interessiert mich genauso wenig wie damals.
Aber Delphi war halt eine nette Sprache damals, find ich. Java war für den Desktop ungeeignet (genauso wenig wie heute) und C++ war nicht die Sprache der Wahl für Leute, die das nur nebenbei gemacht haben. Damals gabs nicht so viele professionelle Entwickler. Sehr viel Software wurde von Domänenexperten und nicht von Informatikern erstellt. Und die sind mit Delphi wesentlich besser zurechtgekommen, als mit C++. Und es gab schon viel, was man einfach verwenden konnte, z.B. Reporting Komponenten oder Charts, da würd ich in C++ auch heut noch lang suchen. Auch ich selber hätt mich wohl ziemlich sicher nie fürs Programmieren interessiert, wenn ich mit C++ angefangen hätte. Erst viel später war ich bereit, mich darauf einzulassen und noch später ist es bei mir zur Sprache der Wahl geworden.
-
rüdiger schrieb:
C++ hat halt den Vorteil, dass es ziemlich universell verwendbar ist, es viel Knowhow gibt, und es sehr portabel ist.
Und mittlerweile hat C++ vor allem den Vorteil, dass es die wohl "sicherste" Mainstreamsprache ist, was Ressourcenverwaltung angeht.
PS: C interessiert eigentlich immer weniger. Insofern wird nicht C/C++ gepusht, sondern eben C++. In Stellenanzeigen scheint sich der Ausdruck C/C++ wohl einfach irgendwann eingebürgert zu haben, als er vielleicht noch etwas weniger falsch war.
-
Java ist sicher nicht in 5 Jahren tot. Vielleicht auch noch nicht in 10 Jahren. Aber das Ende ist nah. Und das ist gut so.
-
Steffo schrieb:
Die Entwicklung vom C++11 hat 13 Jahre gebraucht.
Dafür sind schicke Ideen drin.
Java ist C++98 abzüglich der interessanten Ideen. Um gegen Java anzustinken reicht C++98 also auch heute noch.Steffo schrieb:
Bis dahin hat Oracle 3-4 Java-Versionen veröffentlicht
Interessiert das noch wirklich?
Ich verfolge es nicht mehr wirklich, aber mir scheint, dass neue Java Versionen nicht willkommen sind, sondern eher gefürchtet. Die eine Hälfte depreciated, einiges inkompatibel und diverses redundant in verschiedenen Geschmacksrichtungen im Framework.Steffo schrieb:
und in 5 Jahren werden auch nicht von einem Tag auf dem anderen vorhandene Java-Software, die weiterentwickelt und gepflegt werden möchten, aussterben.
Das hast Du recht, Fortran forever. :->
Mechanics schrieb:
Xin schrieb:
Vor 10 Jahren klang dieses "Naja..." genauso von den Delphi-Freunden.
Ich hab das damals eigentlich genau andersrum wahrgenommen. Die Delphi Entwickler wurden immer als Müslifresser belächelt, die richtigen Männer haben C++ gemacht, und Java war voll der Hype. Und natürlich immer das Argument, C++ ist performanter als Delphi. Damals hab ich viel in Delphi gemacht (noch als Schüler, nicht professionell) und es war in jeder Hinsicht schnell genug und Performance hat mich null interessiert.
Ich habe vor 12 Jahren auch Delphi programmiert... Das Performance-Argument ist bei Delphi totaler Blödsinnn... wenn man Delphi richtig quält, liefert es C++-Fehlermeldungen. ^^
Delphi ist C++Builder, nur mit Object-Pascal-Syntax.Ansonsten stimme ich der Beschreibung (Müslifresser) aber zu. Ich habe Delphi auch gehasst. Dann kam Java und seitdem denke ich, dass Delphi doch nicht so schlecht war. ^^
Mechanics schrieb:
Auch ich selber hätt mich wohl ziemlich sicher nie fürs Programmieren interessiert, wenn ich mit C++ angefangen hätte. Erst viel später war ich bereit, mich darauf einzulassen und noch später ist es bei mir zur Sprache der Wahl geworden.
Ich denke, C++ weiß man erst zu schätzen, wenn man viel programmiert hat, zum Selbststudium ist C++ wirklich nicht gerade perfekt. Mit einem guten Lehrer schon oder einem guten Tutorial und Forum finde ich das aber durchaus. Und Delphi war die Sprache, die am dichtesten hinter C++ her war, leider zuviel Prosa - imho.
Ich finde die Reaktionen interessant... Vor drei Jahren wurde das konsequent abgelehnt, dass Java auch nur sterben könnte... das klingt hier inzwischen schon irgendwie einstimmend. ^^
-
Xin schrieb:
Ansonsten stimme ich der Beschreibung (Müslifresser) aber zu. Ich habe Delphi auch gehasst.
Die Sprache an sich war natürlich ziemlicher Müll. Die Syntax find ich so im nachhinein recht hässlich (aber das ist Gewohnheitssache, damals fand ichs durchaus ansprechend), keine Templates oder Generics, jahrelang keine gescheite Unicode Unterstützung. Dafür hat man schnell Ergebnisse gesehen, und man konnte schnell und relativ sauber überschaubere Projekte realisieren. Also das was man heute mit C# macht (ich würd übrigens sagen, das hat Delphi weggefegt, und nicht Java).
Die Frage, ob Java stribt, finde ich eigentlich irrelevant (wobei ich das nicht glaube). Selbst wenn, wird was ähnliches den Platz einnehmen, oder vielleicht sowas wie Scala, aber sicher nicht sowas wie C++. Die meisten Informatiker und Entwickler können kein C++ und brauchen das auch nicht. Find dich damit ab. Man kann auch wunderbar ohne arbeiten. Von dem her werden die meisten auch in Zukunft ohne C++ arbeiten. Ob sie dann Java, C# oder Scala benutzen ist ja relativ egal, die Sprachen kann man verstehen und lernen, wenn Java kann. C++ hingegen können die hingegen nicht so ohne weiteres lernen und wollen das auch nicht und brauchen das nicht. Daran wird weder C++11 oder C++17 was ändern.
Dir kanns aber egal sein, glaub nicht, dass man in überschaubarer Zukunft Probleme haben wird, einen Job als C++ Entwickler zu finden.
-
@Mechanics: Ich glaub nicht, dass Scala massentauglich ist. Es verfolgt ein anderes (funktionales) Paradigma und die Abstraktion kann einen schon zu schaffen machen. Ich finde es als Scala-Anfänger schon erstaunlich, was man so alles mit wenigen Zeilen Code ausdrücken kann, aber es kommt schon vor, dass ich 5 Minuten über ein Beispiel nachdenke...
Da scheint mir C++ mit seiner imperativen Herangehensweise deutlich massentauglicher zu sein.
-
Steffo schrieb:
@Mechanics: Ich glaub nicht, dass Scala massentauglich ist. Es verfolgt ein anderes (funktionales) Paradigma und die Abstraktion kann einen schon zu schaffen machen. Ich finde es als Scala-Anfänger schon erstaunlich, was man so alles mit wenigen Zeilen Code ausdrücken kann, aber es kommt schon vor, dass ich 5 Minuten über ein Beispiel nachdenke...
Da scheint mir C++ mit seiner imperativen Herangehensweise deutlich massentauglicher zu sein.Hmm, ich glaub, du bist da nicht objektiv, weil du C++ kannst Ja, einige Konstrukte von Scala sind nicht ganz leicht zu verstehen. Aber man muss es ja nicht auf die Spitze treiben und komplett funktional oder einfach "anders" programmieren, man kann mit Scala ganz normal programmieren und ein paar nette Features nutzen, die Java nicht bietet, so mach ich das meistens.
Das Problem mit C++ hingegen ist, dass es viel zu technisch ist, und die Leute, die das noch nicht können, sind auch überhaupt nicht bereit, sich darauf einzulassen. Das habe ich bei sehr vielen Kollegen beobachtet, die studiert haben und jahrelange Berufserfahrung haben und auch wirklich gut in dem waren, was sie tun - man kann Informatiker ja nicht danach beurteilen, ob er C++ kann. Die hätten wohl sowieso keine Probleme mit funktionaler Programmierung, weil sie das an der Uni hatten, aber das ist sogar nebensächlich, sobald es um abstrakte Konzepte geht, waren die bereit, sich darauf einzulassen und sich reinzudenken. Aber sobald es etwas technisches war, was so an sich keinen Sinn macht und einfach nur umständlich ist, wars gleich kompletter Bullshit und es war vorbei. Ich musste mal in einer Firma ein C++ Projekt warten, alle anderen waren Java und C# Entwickler. Sobald es um C++ ging, war keiner bereit, sich das überhaupt anzuschauen. Ich würd aber nie behaupte, dass es schlechte Entwickler waren. Die brauchen einfach kein C++ und werden auch nie bereit sein, sich damit zu beschäftigen. Dazu gibts auch überhaupt keinen Grund, technische Sprachen sind out, bei den meisten modernen Sprachen muss man sich mit technischen Details überhaupt nicht beschäftigen und kann sich auf das eigentliche Problem konzentrieren ohne zu befürchten, irgendwas falsch zu machen, weil die Sprache nicht so funktioniert, wie man das intuitiv erwartet. Welche Sprache dann auch Java evtl. als Mainstream ablösen mag, die wird C++ sicher nicht ähneln.