Professionelles C++
1312 Seiten
German
PDF
4.5

Professionelles C++

Professionelles C++

Autor:

Jahr:

Zusammenfassung:

Einleitung

Das Buch „Professional C++“ (5. Auflage) von Marc Gregoire ist nicht nur ein weiteres Lehrbuch über die Sprache. Es ist ein grundlegendes Werk, das zu Recht als eines der besten Bücher für diejenigen gilt, die die Grundlagen von C++ bereits beherrschen und auf ein professionelles Niveau aufsteigen möchten. Das 2021 erschienene Buch deckt die Standards C++17 und C++20 ab, was es zum Zeitpunkt der Veröffentlichung äußerst aktuell macht. Der Umfang von 1312 Seiten mag Anfänger abschrecken, aber für erfahrene Entwickler ist es eine wahre Schatzkammer des Wissens.

Worum geht es in diesem Buch?

Das Buch ist in mehrere logische Teile gegliedert, die den Leser Schritt für Schritt in die Welt der professionellen C++-Entwicklung einführen. Der Autor listet nicht nur die Möglichkeiten der Sprache auf, sondern lehrt, wie ein Ingenieur zu denken, der zuverlässige und effiziente Systeme entwirft. Zu den Hauptthemen gehören:

  • Modernes C++ (C++17/20): detaillierte Analyse neuer Funktionen: structured bindings, if constexpr, concepts, ranges, coroutines, modules.
  • Speicherverwaltung: intelligente Zeiger, RAII, Move-Semantik, Allokatoren.
  • STL (Standard Template Library): tiefgehende Betrachtung von Containern, Algorithmen, Iteratoren und Funktoren.
  • Multithreading und Asynchronität: Threads, Mutexe, Futures, Async, atomare Operationen.
  • Softwareentwurf: Entwurfsmuster, C++-Idiome, SOLID, Testen (Unit-Tests, TDD).
  • Netzwerkprogrammierung: Arbeit mit Sockets, Bibliothek Boost.Asio.
  • Optimierung und Leistung: Profiling, Cache-Effizienz, Inlining.

Für wen ist dieses Buch?

Das Buch richtet sich an Programmierer mittleren und hohen Niveaus, die bereits Erfahrung mit C++ haben (mindestens ein bis zwei Jahre) und ihr Wissen systematisieren, moderne Standards erlernen und Best Practices aneignen möchten. Anfängern, die gerade erst mit dem Erlernen von C++ beginnen, wird das Buch zu komplex erscheinen – besser geeignet sind „C++ Primer“ von Lippman oder „Die C++-Programmiersprache“ von Stroustrup. Nach dem Erwerb von Grundkenntnissen ist dieses Buch jedoch der ideale nächste Schritt.

Was lernt der Leser?

  • Wie man Code schreibt, der leicht zu warten und zu erweitern ist.
  • Wie man intelligente Zeiger effektiv einsetzt und Speicherlecks vermeidet.
  • Wie man Move-Semantik zur Leistungssteigerung anwendet.
  • Wie man mit Multithreading arbeitet und Datenrennen vermeidet.
  • Wie man die neuesten Funktionen von C++20 (concepts, ranges, coroutines) nutzt.
  • Wie man Klassen und Hierarchien unter Berücksichtigung der SOLID-Prinzipien entwirft.
  • Wie man Unit-Tests schreibt und Tests in den Entwicklungsprozess integriert.
  • Wie man Code auf der Ebene von Algorithmen und Datenstrukturen optimiert.

Stärken des Buches

Das erste, was ins Auge fällt, ist die Strukturiertheit. Jedes Kapitel beginnt mit einer kurzen Einleitung und endet mit einer Zusammenfassung und Übungen. Der Autor verwendet zahlreiche Codebeispiele, die sofort ausprobiert werden können. Zweitens die Tiefe. Gregoire scheut sich nicht, in die Tiefe zu gehen: Er erklärt nicht nur das „Wie“, sondern auch das „Warum“ eines bestimmten Mechanismus. Drittens die Aktualität. Das Buch deckt C++20 ab, was in so umfangreichen Leitfäden selten vorkommt. Schließlich die praktische Ausrichtung: Der Autor gibt ständig Ratschläge zu Codestil, Debugging und Profiling.

Wem wird es empfohlen?

Ich empfehle dieses Buch nachdrücklich allen, die Experte in C++ werden möchten. Es wird sowohl für Entwickler von Spielen und eingebetteten Systemen als auch für Ingenieure nützlich sein, die an hochbelasteten Servern oder Finanzanwendungen arbeiten. Wenn Sie sich auf ein Vorstellungsgespräch bei einem großen Technologieunternehmen vorbereiten, das fundierte C++-Kenntnisse erfordert, wird dieses Buch Ihr bester Begleiter sein. Eine einzige Warnung: Versuchen Sie nicht, es in einer Woche zu lesen. Es ist besser, ein Kapitel pro Tag zu studieren und dabei die Übungen zu machen und zu experimentieren.

Empfehlungen