Die Qt Experten

Clean Code C++

Sie wollen die Qualität Ihres Quellcodes verbessern, sodass dieser sauberer, gut strukturiert und einfach zu lesen ist? Dann ist diese Clean Code C++ Schulung die richtige für Sie und Ihr Team.

In diesem Kurs lernen Sie die wichtigsten Prinzipien, Regeln und Konzepte kennen, die es Ihnen ermöglichen, sauberen Code zu schreiben. Der Kursleiter ist ein erfahrener Softwarearchitekt und Softwareentwickler mit 20 jähriger Erfahrung. Er wird den Teilnehmern in seinem unverwechselbaren Präsentationsstil die Grundlagen vermitteln, die sie benötigen, um guten Quellcode zu schreiben und unprofressionellen Code in professionellen Code zu verwandeln. Um den Stoff nachhaltig zu vermitteln und motivieren zu können wechseln sich Theorie und Praxis ab. Wer Clean Code beherrscht ist produktiver, schneller und produziert deutlich besseren Code. Dieses Know-how und die notwendigen Methoden sollten zum Werkzeugkasten eines jeden C++ Entwicklers gehören.

Agenda

Übersicht und Einführung

  • Motivation, Ideen, Ziele und Umsetzungen
  • Grundprinzipien und Konzepte von Clean Code
  • Praktische Einführung in Session Workflow
  • Praxisteil
  • Beispielcode zum Laufen bekommen
  • Tests durchführen
  • Einfache Refactorings durchführen

Umgang mit Legacy Code

  • Bewusstsein für Probleme schaffen
  • Strategien für Umgang mit Legacy Code

Riskominimierung durch Unit Tests

  • Zielstellungen für gute Tests
  • Herausforderungen in C++
  • Architekturen für gute Testbarkeit
  • Praxisteil
  • Realistischer Legacy Code ohne Unit Tests
  • Refactoring, um Unit Tests zu ermöglichen
  • Erstellung der Unit Tests
  • Testgetriebene Entwicklung neuer Leistungsmerkmale

Modularisierung und Dependency Injection in C++

  • Problembewusstsein und Motivation
  • Ziele und Ideen, sowie Refactoring-Strategien
  • Praxisteil
  • Praxisnahe Qt GUI-Anwendung
  • Refactoring mit Dependency Injection
  • Testgetriebene Entwicklung neuer Leistungsmerkmale

Modularisierte Gesamtarchitektur

  • Architektur in großen Projekten
  • Nutzung von Interfaces und stabilen APIs
  • Praxisteil
  • Leistungsmerkmale in modularer Architektur am Beispiel einer GUI-Anwendung
  • Testgetriebene Entwicklung neuer Leistungsmerkmale

Vererbung in C++ richtig nutzen

  • Vorstellung objektorientiertes Design (OOD)
  • Alternativen zur Vererbung
  • Vererbung ist ein Implementierungsdetail
  • Wann ist was angebracht
  • Praxisteil A
  • Kapselung von Vererbung mithilfe von Function Templates
  • Bezug dieser Methode auf die vorherigen Schulungsinhalte
  • Testgetriebene Entwicklung neuer Leistungsmerkmale
  • Praxisteil B
  • Ideen für zukünftige Verbesserungen der selbstentwickelten Beispiele
  • Diskussion von Ansätzen zur Verbesserung der Codebasis von Teilnehmern

Zielgruppe

  • Sowohl Einsteiger als auch erfahrene C++-Entwickler
  • Sie benötigen einen PC mit einem aktuellen C++ Compiler (mind. C++11)
  • Preise und Termine werden mit Ihnen vereinbart
  • Teilnahmeanzahl von 3-8 Personen möglich

Mit dem Kurs erhalten Sie

  • Qualitativ hochwertiges Handout als PDF
  • Quell-Code für Übungen inklusive Musterlösungen als ZIP-Datei
  • Zertifikat