Kontakt aufnehmen
 Dauer 28 Stunden

Schulungsübersicht

Tag 1 — Robuste Python-Grundlagen & Tooling

Moderne Python-Funktionen und Typisierung

  • Typisierung-Grundlagen, Generics, Protocols und TypeGuard
  • Dataclasses, gefrorene Dataclasses und Überblick über attrs
  • Pattern-Matching (PEP 634+) und idiomatische Verwendung

Codequalität und Tooling

  • Code-Formattierer und Linter: black, isort, flake8, ruff
  • Statische Typprüfung mit MyPy und pyright
  • Pre-Commit-Hooks und Entwickler-Workflows

Projektmanagement und Paketierung

  • Abhängigkeitsverwaltung mit Poetry und virtuellen Umgebungen
  • Paketlayout, Entry Points und beste Versionierungspraktiken
  • Erstellen und Veröffentlichen von Paketen auf PyPI und privaten Registries

Tag 2 — Design Patterns & Architekturen

Design Patterns in Python

  • Erstellende Patterns: Factory, Builder, Singleton (Pythonic-Varianten)
  • Strukturierende Patterns: Adapter, Facade, Decorator, Proxy
  • Verhaltensbezogene Patterns: Strategy, Observer, Command

Architekturprinzipien

  • SOLID-Prinzipien angewendet auf Python-Codebasen
  • Hexagonale/Clean Architecture und Grenzen
  • Dependency-Injection-Patterns und Konfigurationsmanagement

Modularität und Wiederverwendbarkeit

  • Gestaltung von Bibliothekscode vs. Anwendungscode
  • APIs, stabile Schnittstellen und semantische Versionierung
  • Behandlung von Konfiguration, Secrets und umgebungsspezifischen Einstellungen

Tag 3 — Concurrency, Async IO und Performance

Concurrency und Parallelismus

  • Grundlagen des Threading und die Implikationen des GIL
  • Multiprocessing und Prozesspools für CPU-gebundene Aufgaben
  • Wann concurrent.futures vs. multiprocessing verwendet werden sollte

Async-Programmierung mit asyncio

  • Async/await-Patterns, Event-Loop und Abbruch
  • Gestaltung asynchroner Bibliotheken und Interoperabilität mit synchonem Code
  • IO-gebundene Patterns, Backpressure und Rate Limiting

Profiling und Optimierung

  • Profiling-Tools: cProfile, pyinstrument, perf, memory_profiler
  • Optimierung von Hot Paths und Verwendung von C-Extensions/Numba, wo angemessen
  • Messung von Latenz, Durchsatz und Ressourcennutzung

Tag 4 — Testing, CI/CD, Observability und Deployment

Teststrategien und Automatisierung

  • Unit-Testing und Fixtures mit pytest; Testorganisation
  • Property-based Testing mit Hypothesis und Contract-Testing
  • Mocking, Monkeypatching und das Testen asynchronen Codes

CI/CD, Release und Monitoring

  • Integration von Tests und Qualitäts-Gates in GitHub Actions/GitLab CI
  • Erstellen reproduzierbarer Container mit Docker und Multi-Stage-Builds
  • Anwendungs-Observability: strukturiertes Logging, Prometheus-Metriken und Tracing

Sicherheit, Absicherung und Best Practices

  • Abhängigkeits-Auditing, SBOM-Grundlagen und Schwachstellen-Scans
  • Sichere Coding-Praktiken für Eingabevalidierung und Secrets-Management
  • Runtime-Absicherung: Ressourcenlimits, Benutzerrechte und Container-Sicherheit

Capstone-Projekt & Review

  • Team-Labor: Entwurf und Implementierung eines kleinen Dienstes unter Verwendung der Patterns aus dem Kurs
  • Testing, Type-Checking, Paketierung und CI-Pipeline für das Projekt
  • Endgültiges Review, Code-Kritik und umsetzbarer Verbesserungsplan

Zusammenfassung und nächste Schritte

Voraussetzungen

  • Fundierte Erfahrungen in der Python-Programmierung auf mittlerem Niveau
  • Vertrautheit mit objektorientierter Programmierung und grundlegendem Testing
  • Erfahrung in der Verwendung der Befehlszeile und Git

Zielgruppe

  • Senior Python-Entwickler
  • Software-Ingenieure, die für Codequalität und Architektur in Python verantwortlich sind
  • Technische Leads sowie MLOps-/DevOps-Ingenieure, die mit Python-Codebasen arbeiten

Teilnehmerzahl


Preis je Teilnehmer (exkl. USt)

Erfahrungsberichte (2)

Kommende Kurse

Verwandte Kategorien