Wie schwierig ist C++?
Bei einer so umfangreichen Programmiersprache wie C++ ist es nicht so einfach, einen Schwierigkeitsgrad festzulegen. Man kann auch mit geringen Vorkenntnissen schnell C++ so lernen, dass man sinnvolle Funktionalität implementieren kann, aber schon hier sind die Hürden etwas größer, als bei Programmiersprachen mit einer verwalteten Laufzeitumgebung, wie z.B. Java, C#, Go, Kotlin, Ruby etc.
Es gibt in C++ eine ganze Reihe fortgeschrittener Sprachkonstrukte, die es ermöglichen, in großen und komplexen Programmierprojekten besser wartbaren Code zu schreiben. Andere fortgeschrittene Konstrukte erlauben einem die Implementierung allgemein verwendbarer, eleganter eigener APIs. Hier sind die Anforderungen an den Kenntnisstand des Entwicklers wesentlich höher, und auch z.B. höher als in Sprachen mit einer verwalteten Laufzeitumgebung.
Bei der Entwicklung eigener APIs ist sowohl die Kenntnis der verfügbaren Sprachkonstrukte und Bibliotheken entscheidend, als auch die allgemeinen Fähigkeiten im Bereich Software-Architektur und Anforderungsmanagement. Die letzteren sind unabhängig von der Programmiersprache, stellen aber oft eine Hürde für die effiziente Entwicklung dar. Aus diesem Grund bin ich persönlich der Meinung, dass die Frage nach dem Schwierigkeitsgrad einer bestimmten Programmiersprache allgemein etwas überbewertet wird, denn ob ein Softwareprojekt gut wird, liegt nicht nur daran, wie weit jeder einzelne Entwickler in die Details der Programmiersprache eingedrungen ist, sondern vor allem auch an methodischen Faktoren. Die Kenntnis der Programmiersprache ist die Grundlage, aber alles, was darauf aufbaut, ist mindestens genauso wichtig, um ein Projekt zum Erfolg zu führen.