Dem Tiobe Index zufolge ist C die Sprache, nach der am zweitmeisten gesucht wird. C++ folgt auf Platz 4. Beide Sprachen werden genutzt, um besonders hardwarenah zu programmieren und somit die beste Performance aus einem Programm herauszuholen. Nachteil dabei ist, dass die Sprachen den Entwicklern direkten Zugriff auf den Hauptspeicher gewähren und ihnen auch die Verwaltung dessen aufbrummen. Das bedeutet, dass Fehler in der Programmierung des Speichers direkt zu Sicherheitslücken führen können, die dann von Schadsoftware ausgenutzt werden. Circa 70 Prozent aller in Windows gefixten Sicherheitslücken haben mit solchen Fehlern in der Speicherverwaltung zutun.
Mit Rust gibt es mittlerweile seit einigen Jahren eine von der Mozilla Foundation entwickelte Alternative, welche gleichzeitig modern, schnell und sicher sein soll. Rust hat dabei das Potenzial, C und C++ zu ersetzen. Im Firefox-Browser ist die Servo Engine bereits mit Rust geschrieben. Nun evaluiert Microsoft ebenfalls den Einsatz von Rust. Auch Googles Fuchsia Betriebssystem, welches sich aktuell in der Entwicklung befindet soll Rust als native Programmiersprache unterstützen.
Mit Rust hätte Microsoft die Möglichkeit, Teile des Betriebssystems und der eigenen Programme sicherer zu programmieren, was letztendlich dem Nutzer zugute kommt. Laut einer Umfrage bei StackOverflow, einer Programmierercommunity, ist Rust die „most loved“ Programmiersprache, also die beliebteste. Neben Firefox nutzt auch der Brave Browser für seine Adblock-Komponente statt C++ die Sprache Rust.
Quelle: ZDNet
C und C++ sind mit Sicherheit Sprachen, die überdurchschnittlich programmtechnischer Disziplin einfordern. Wobei C++ komplizierter ist als C. Das Problem sind weniger die Sprachen selbst, sondern die darunter liegende Ebene. Das Problem ist die Assemblerprogrammierung, welche immer vom jeweiligen Chiphersteller abhängig ist. Gerade das erfordert eine immer aufs neue Einarbeitung (Abhängig vom Chiphersteller und Chipgeneration). Das Problem wird auch eine weitere Sprache nicht lösen können, weil man als Assemblerprogrammierer einen grundlegenden Eingriff und Formgebung benötigt. ***********************************************************************************************************Übrigens, Fuchsia ist kein Betriebssystem, sondern lediglich eine Testplattform für neue Testanwendungen!
Das ist aber sicherlich kein Grund, C# aufzugeben…
Von C# ist ja auch nicht die Rede, sondern von C/C++
Ja.
Und genau deswegen musste es ja erwähnt werden.
Weil vergessen wurde, Rust C# gegenüberzustellen.
So wie hier:
https://stackshare.io/stackups/c-sharp-vs-rust
Naja, C# hat ja nen ganz anderen Ansatz. Es ist ne Sprache für eine Laufzeitumgebung (.NET), wie Java. Das hat mit Low-Level Programmierung erst mal nicht viel zutun
C und C++ sind inzwischen sehr in die Jahre gekommen und kommenden Anforderungen sicherlich nur noch schwer gewachsen, auf Grund neuer Schnittstellen, neuen Forderungen, neuer Hardware und neuen Gefahren.
So sehr ich grad C++ gemocht habe… Denke ich das der weg nur natürlich ist.
Persönlich nutze primär c# , wobei ich das nur noch Hobbymäßig mache… Momentan z.b. Für ein Dienstplanprogramm
C und C++ ist nicht in die Jahre gekommen, sondern wird fortwährend weiterentwickelt!
C hat heute den aktuellen Codestandart C11 erreicht und C++ wird demnächst vom Codestandart C++14 in den Codestandart C++17 angehoben!
Rust ist syntaktisch ein Totalschaden, und absolut kein Mehrgewinn gegenüber C / C++.
Die Komplexität von Rust dürfte auch viele überfordern. Nach anfänglicher Sympathie habe ich Rust verworfen und mich auf modernes C++ konzentriert. Die Sicherheit, die Rust bietet, ist das einzige Argument, aber auch kein sonderlich starkes.