Veröffentlicht am: 07 Mai 2024
Experte:
Ir. Kris van Rens
Trainer
Lesen Sie mehr über Kris van Rens
Aktie

C++ hat sich im Laufe der Zeit stark weiterentwickelt. Softwareingenieure, die immer noch veraltete Paradigmen der Programmiersprache verwenden, schöpfen ihr Potenzial nicht voll aus. In seiner „C++ Grundlagen„-Schulung am High Tech Institute führt der Computerprogrammier-Enthusiast Kris van Rens in C++20 ein, einschließlich Themen wie Vorlagen und Bereiche.

Im Laufe der Jahre sind viele Programmiersprachen als Alternativen zu C++ vorgeschlagen worden. Dennoch hat C++ dadurch nicht an Bedeutung verloren, betont der Programmierfan Kris van Rens. „Es gibt Millionen von Zeilen C++-Code in der Produktion, und eine beträchtliche Anzahl von Ingenieuren in der Industrie ist in dieser beliebten Programmiersprache ausgebildet.“

Eine der Herausforderungen bei der Beherrschung von C++ ist der schiere Umfang der Sprache, stellt Van Rens fest. „C++ ist eine alte Sprache, die aufgrund der vielen neuen Funktionen, die sie im Laufe der Zeit erhalten hat, ziemlich umfangreich und relativ komplex geworden ist. Infolgedessen haben viele C++-Entwickler ihre Sprachkenntnisse bruchstückhaft aufgebaut, ohne einen klaren, umfassenden Überblick zu haben.“

Van Rens möchte in seinem 4-tägigen Schulungskurs „C++ Grundlagen“, der vom High Tech Institute organisiert wird, diese umfassende Sicht auf die Programmiersprache vermitteln. In dieser Schulung führt er Softwareingenieure aller Niveaus in die Grundlagen des modernen C++ ein, unabhängig davon, ob sie zum ersten Mal mit der Programmiersprache in Berührung kommen oder ihre Kenntnisse älterer C++-Versionen auffrischen wollen.

''Many books and online resources are still teaching older versions of C++, thereby restricting you from realizing the language’s potential to the fullest.''

Eine lebendige Sprache

Da sich C++ und seine Werkzeuge im Laufe der Zeit stark verändert haben, ist es leicht, sich mit veralteten Paradigmen zu beschäftigen. Van Rens mahnt: „Viele Bücher und Online-Ressourcen lehren immer noch ältere Versionen von C++ und hindern Sie so daran, das Potenzial der Sprache voll auszuschöpfen.“ C++ ist als Sprache immer noch sehr lebendig, denn alle drei Jahre erscheinen neue Versionen und mindestens alle sechs Jahre werden wichtige Funktionen aktualisiert. „Es liegt an den Softwareingenieuren und ihren Arbeitgebern, sich über die Änderungen der Sprache auf dem Laufenden zu halten und von den neuen Funktionen zu profitieren“, meint Van Rens.

Van Rens behandelt in seiner Schulung C++20, einschließlich leistungsstarker Themen wie Vorlagen und Bereiche. „Diese C++-Version von 2020 wird von den meisten aktuellen Toolchains vollständig unterstützt, und in industriellen Produktionsumgebungen ist ihre Einführung relativ neu. Vielleicht sind einige Teilnehmer der Schulung nicht in der Lage, C++20 direkt in ihrer Umgebung anzuwenden. Sie werden jedoch in der Lage sein, die potenziellen Verbesserungen und Änderungen zu erkennen, die C++20 für ihren Code mit sich bringen wird. Auf diese Weise werden sie hoffentlich in der Lage sein, zu einer zukünftigen Migration auf neuere C++-Versionen in ihrem Unternehmen beizutragen. Während der Schulung hebe ich auch die Funktionen von C++20 hervor, die in früheren Versionen der Sprache fehlten.“

Die Schulung „C++-Grundlagen“ erstreckt sich über insgesamt vier Tage, aufgeteilt in zwei Blöcke von je zwei vollen Tagen, mit einer Woche Pause dazwischen. „In den ersten beiden Tagen behandle ich die grundlegenden Elemente der Sprache, gefolgt von einer Vertiefung in den nächsten Tagen. Der Schwerpunkt liegt auf dem Aufbau eines soliden Grundwissens über C++ und darauf, zu wissen, wo man Quellen für die weitere berufliche Entwicklung in C++ findet“, fasst Van Rens die Schulung zusammen. Er verbringt etwa die Hälfte der Schulungsdauer mit Übungen, die er aus seiner praktischen Erfahrung als erfahrener C++-Softwareentwickler ableitet. Für diejenigen, die noch tiefer in die Materie einsteigen möchten, gibt es einige größere Hausaufgaben.

''Perhaps in the distant future, C++ might evolve to accommodate strict safety requirements, but not at this moment. However, using the right discipline, guidelines and tools, working with C++ can be mostly safe.''

Software-Sicherheit und Sicherheit

Ein neues Thema im Bereich der Programmiersprachen ist der Übergang zu strengeren Vorschriften für die Sicherheit von Software. Dies wird alle Bereiche der Softwareentwicklung beeinflussen, betont Van Rens. „Software-Ingenieure werden wahrscheinlich mehr Garantien in Bezug auf Sicherheit und Schutz bieten müssen.“ Die beiden wichtigsten Ansätze hierfür sind die Verwendung einer speichersicheren Programmiersprache wie Rust oder die Verwendung einer Sprache mit Garbage Collection, um die manuelle Speicherverwaltung zu eliminieren.

Obwohl C++ keine streng sichere Programmiersprache ist, bestätigt Van Rens, dass C++-Code immer noch seinen Platz in der Anwendungslandschaft hat. „Vielleicht wird sich C++ in ferner Zukunft weiterentwickeln, um strengen Sicherheitsanforderungen gerecht zu werden, aber nicht im Moment. Mit der richtigen Disziplin, den richtigen Richtlinien und Tools kann die Arbeit mit C++ jedoch weitgehend sicher sein. Es gibt zwar keine festen Garantien, aber für Ihre Zwecke könnte es ’sicher genug‘ sein.“

Dieser Artikel wurde von Koen Vervloesem geschrieben., freier Mitarbeiter bei Bits&Chips.

Die Schulung 'C++ Grundlagen' wird einmal im Jahr organisiert