DevOps für C++-Entwickler: Automatisierung, CI/CD und Containerisierung
300 Seiten
German
PDF
4.5

DevOps für C++-Entwickler: Automatisierung, CI/CD und Containerisierung

DevOps für C++-Entwickler: Automatisierung, CI/CD und Containerisierung

Autor:

Jahr:

Zusammenfassung:

Das Buch „DevOps für C++-Entwickler“ ist ein praktischer Leitfaden, der die Lücke zwischen der klassischen C++-Entwicklung und modernen DevOps-Praktiken schließt. Im Gegensatz zu Sprachen mit dynamischer Typisierung stellt C++ besondere Anforderungen an Build-, Link- und Testprozesse, was Standard-DevOps-Ansätze oft nicht direkt anwendbar macht. Der Autor, Alexey Voronov, der über mehr als 10 Jahre Erfahrung in der Entwicklung hochlastiger Systeme verfügt, teilt bewährte Methoden und Vorlagen zur Organisation des gesamten Auslieferungszyklus von C++-Anwendungen.



Das Buch richtet sich an C++-Entwickler ab dem Middle-Level, die Folgendes möchten:

  • Routinemäßige Build- und Testprozesse automatisieren;
  • Kontinuierliche Integration (CI) für Projekte mit CMake, Makefile und anderen Build-Systemen einrichten;
  • C++-Anwendungen in Docker-Container verpacken (einschließlich Multi-Stage-Builds zur Reduzierung der Image-Größe);
  • Regressionstests, Modultests und Integrationstests in Pipelines organisieren;
  • Infrastructure as Code-Praktiken zur Verwaltung von Entwicklungs- und Produktionsumgebungen einführen.


Besonderes Augenmerk liegt auf:

  • Build und Abhängigkeiten – Verwaltung von Abhängigkeiten über vcpkg und Conan, Optimierung der Build-Zeit durch Caching (ccache, sccache);
  • CI/CD-Pipelines – Schrittweise Erstellung von Pipelines in GitHub Actions, GitLab CI und Jenkins für C++-Projekte;
  • Containerisierung – Erstellung leichtgewichtiger Docker-Images für C++-Anwendungen, Arbeit mit Alpine Linux, Behebung von Problemen mit glibc und statischem Linken;
  • Testen – Integration von Google Test, Catch2 und Boost.Test in CI, Generierung von Code-Coverage-Berichten (gcov, lcov);
  • Monitoring und Logging – Einrichtung der Metrikenerfassung und des zentralisierten Loggings für C++-Dienste.


Alle Beispiele basieren auf realen Projekten und werden von fertigen Konfigurationsdateien begleitet, die an die eigenen Aufgaben angepasst werden können. Das Buch ist ohne überflüssige Informationen geschrieben – jeder Abschnitt enthält praktische Tipps, typische Fehler und deren Lösungen.



Nach der Lektüre werden Sie in der Lage sein:

  • Die Auslieferungszeit neuer Versionen von Stunden auf Minuten zu reduzieren;
  • Das „bei mir funktioniert es“-Syndrom durch automatisiertes Testen in produktionsidentischen Umgebungen zu vermeiden;
  • Das Leistungsmonitoring Ihrer C++-Dienste einzurichten;
  • Docker, Kubernetes und Orchestrierungssysteme für C++-Anwendungen sicher zu nutzen.


Das Buch eignet sich sowohl für Teams, die gerade erst mit der Einführung von DevOps beginnen, als auch für erfahrene Ingenieure, die nach spezifischen Lösungen für das C++-Ökosystem suchen. Alle Codebeispiele sind im GitHub-Repository verfügbar.

Empfehlungen