Beschreibung
Softwareentwicklung mit Python: Fortgeschrittene Tools und Techniken
Ziel
Dieser zweitägige Workshop führt Python-Entwicklerinnen und -Entwickler in Best Practices für die Arbeit an größeren Softwareprojekten ein. Anhand von praxisnahen Beispielen lernen die Teilnehmenden, Abhängigkeiten effizient zu managen, Codequalität und Wartbarkeit mit geeigneten Werkzeugen sicherzustellen sowie Type Hints und Tests gezielt einzusetzen.
In diesem Workshop lernen Sie:
-
Abhängigkeiten zu verwalten und das Python-Packaging-Ökosystem zu verstehen.
-
virtuelle Umgebungen zu nutzen und Python-Versionen zu verwalten.
-
die Qualität und Wartbarkeit des Codes durch Linting, Codeformatierung und Coding-Standards zu verbessern.
-
Type Hints und Type-Checking in Python-Projekten anzuwenden.
-
Python-Projekte mit Poetry zu organisieren.
-
Pytest und effektive Teststrategien anzuwenden.
-
Tests mit Fixtures und Test-Suites zu strukturieren.
Kommende Starttermine
Inhalte / Module
Mit der starken Verbreitung von Python als Programmiersprache ist eine Vielzahl von Tools entstanden, die Entwicklungsprozesse vereinfachen. Auch die Einführung neuer Sprach-Features wie Type Hints und Entwicklungen im Bereich des Paket- und Projektmanagements tragen zur Erleichterung der täglichen Arbeit bei.
Der Umgang mit diesen Hilfsmitteln ist jedoch zunächst mit einem erhöhten Lernaufwand verbunden und es besteht die Gefahr, als Entwickler das eigentliche Ziel – die effiziente Erstellung performanter und robuster Software – aus den Augen zu verlieren.
In diesem Workshop lernen die Teilnehmenden wichtige Werkzeuge des Python-Ökosystems kennen, erproben diese praktisch an realistischen Projekten und lernen interaktiv deren Möglichkeiten und Grenzen kennen. Darüber hinaus erarbeiten die Teilnehmenden Strategien für die Auswahl und Einführung neuer Tools in bestehende Projekte.
Der Workshop ist vollständig interaktiv. Die Teilnehmenden arbeiten mit verschiedenen Anwendungsbeispielen und setzen Best Practices direkt um. Zwischendurch besteht immer wieder die Möglichkeit, Problemstellungen aus dem eigenen Entwicklungsalltag in der Gruppe zu diskutieren.
1. Block: Management von Abhängigkeiten
-
Einführung in PyPI und das Python-Packaging-Ökosystem
-
Definition von Abhängigkeiten über requirements.txt
-
Arbeiten mit Virtual Environments
-
Verwaltung von Python-Versionen und -Umgebungen mitpyenv
2. Block: Code-Qualität und Wartbarkeit
-
Einsatz vonrufffür Linting und Code-Formatierung
-
Automatisierte Ausführung dieser Hilfswerkzeuge mitpre-commit
-
Strategien zur Einführung von Coding-Standards in bestehenden Projekten
3. Block: Type Hinting
-
Grundlegende Syntax und Anwendungsfälle
-
Statische Typ-Analyse mitmypy und pyright
-
Abstract Base Classes und Definition generischer Typen
-
Strategien zur Einführung von Type Hints in bestehenden Projekten
4. Block: Projekt- und Paketverwaltung
-
Konfiguration von Python-Projekten über pyproject.toml
-
Verwalten von Python-Projekten mit Poetry
5. Block: Testing
-
Einführung Pytest und grundlegende Test-Strategien
-
Arbeit mit Mocks und Fixtures
-
Strukturierung und Parametrisierung mitpytest.mark
-
Aufbau und Wartung umfangreicher Test-Suites
Zielgruppe / Voraussetzungen
Der Workshop richtet sich an Entwicklerinnen und Entwickler, die bereits erste Erfahrung mit Python sammeln konnten. Er richtet sich sowohl für Einsteiger auf dem Weg vom Junior zum Senior als auch für Umsteiger von anderen Programmiersprachen sowie für Data Scientists, die ihre Software-Engineering-Kenntnisse erweitern möchten.
Voraussetzungen:
Für die Teilnahme an diesem Workshop sollten Sie
-
einen für die Python-Entwicklung geeigneten Editor (z.B. PyCharm, VS Code oder Vim) verwenden können.
-
über eine betriebsbereite Git-Installation und grundlegende Git-Kenntnisse (Commits, Branches, Merges) verfügen.
-
eine stabile Internetverbindung und ein Terminal verfügen, über das Sie eine SSH-Verbindung in die Schulungsumgebung aufbauen können.
Abschlussqualifikation / Zertifikat
Teilnahmebescheinigung
Kostenzusatz
Enthalten sind Workshopunterlagen und die Teilnahmebescheinigung
Infos anfordern
heise academy
Die heise academy steht für selbstbestimmte und lebenslange Weiterbildung für IT-Professionals und Unternehmen. Unsere Schulungen überzeugen vor allem durch Interaktion, thematischen Tiefgang und individuelle Betreuung. Die iX-Workshops bieten IT-Professionals unverzichtbare Fortbildung sowohl zu neuen als auch zu bestehenden Themen. Das Themenspektrum umfasst...
Erfahren Sie mehr über heise Academy und weitere Kurse des Anbieters.