Beim Einsatz von Threads lauert stets die Gefahr, sich einen Nagel einzutreten. Der richtige Einsatz der Regeln der Core Guidelines helfen, das Verletzungsrisiko zu minimieren. Dieser Artikel stellt die entsprechenden Regeln vor.
Wollte man dem Quicksort-Algorithmus einen Geschmack zuordnen, wäre es süß-sauer. Süß, da er eine sehr elegante Art zu sortieren darstellt; sauer, weil typische Implementierungen mehr Fragen offenlassen als beantworten.
C++11 beschäftigt sich als erster C++-Standard mit Concurrency – ein zweischneidiges Schwert: Einerseits winkt hohe Performance, andererseits lauern viele Gefahren. Wer sie vermeiden will, hält sich an die Concurrency-Regeln der C++-Core-Guidelines.
Im aktuellen Artikel zu den C++ Core Guidelines stehen einmal mehr Regeln zur Performance im Fokus. Wer sie befolgt, den belohnt ein Software-Entwurf, der qua Design performant ist.
Entwickler schätzen C++ vor allem wegen seiner Performance. Doch nicht jede Optimierung ist eine gute Optimierung.
Der Umgang mit Datentypen und deren Werten will gelernt sein. Wer sein Einmaleins nicht beherrscht, den bestraft im besten Fall der Compiler, im schlechtesten ein undefiniertes Programmverhalten.
Diesmal widmet sich der C++-Workshop der wohl wichtigsten Regel für gute Software: aussagekräftige Namen. Sie machen Code lesbar, verständlich und erweiterbar. Unglücklicherweise wird die Benennung viel zu häufig ignoriert.
Die Besitzverhältnisse stehen im Vordergrund, wenn es um die Wahl eines Smart Pointers geht. Rezepte für den richtigen Smart-Pointer-Einsatz liefern einmal mehr die C++ Core Guidelines.
Einen der wichtigsten Aspekte beim Programmieren stellt für C++-Entwickler die Ressourcenverwaltung dar. Zum Glück gibt es dafür Richtlinien.
Soll der Zugriff auf polymorphe Objekte gelingen, muss der Entwickler ein paar Regeln im Auge behalten. Andernfalls stiften Phänomene wie Slicing und frühe Bindung Verwirrung.
Die objektorientierte Programmierung mit C++ erlaubt es, Konzepte elegant in Klassenhierarchien zu modellieren. Kein Wunder also, dass die C++ Core Guidelines dafür mehr als 30 Regeln parat halten.
Mit der Konstruktion beginnt, mit der Destruktion endet der Lebenszyklus eines Objekts. Da trifft es sich gut, dass Entwickler die Zutaten für diesen wichtigen Prozess in C++ sehr exakt aussuchen dürfen.
Funktionen dienen dem Entwickler als Bausteine seines Programms. Doch nicht alle Funktionen sind gleich, beispielsweise gibt es reine und nicht-reine. Was Entwickler mit reinen Funktionen anfangen und wie sie Funktionen in gut verdaulichen Häppchen arrangieren, das verraten die C++ Core Guidelines.
Die Guideline Support Library (GSL) erweist sich als ideale Zutat der C++ Core Guidelines, hilft sie doch den C++-Entwicklern die Regeln der Core Guidelines umzusetzen. Ihr Ziel besteht vor allem darin, im Vergleich zu konventionellem Code keinen Overhead zu verursachen.
In einem Restaurant entspräche ein CPP-Interface einem zwischen Gast (Servicenutzer) und Kellner (Service-Anbieter) vereinbarten Vier-Gänge-Menü. In C++ handelt es sich laut C++ Core Guidelines um den wichtigsten Aspekt beim Organisieren von Code.













