E-Learning Place

Lernplattform wird geladen …

Python für Profis: Typen, Architektur, Leistung, Qualität und Betrieb professioneller Software

Python auf Berufsniveau: Typsystem, Architektur, Leistung, Datenbanken und Schnittstellen, Qualität, Sicherheit und Betrieb.

Dieser Kurs führt dich nach dem Kurs für Fortgeschrittene in 24 Modulen und 96 Lektionen zu professioneller Python-Entwicklung. Du nutzt das Typsystem mit Generics, Protocol und mypy, verstehst Deskriptoren, Metaklassen, Bytecode und Speicher und schreibst Decorators mit sauberer Signatur. Du entwirfst Software mit Entwurfsmustern, Schichten, Ports und Adaptern, bildest ein Domänenmodell mit Value Objects und Aggregaten und baust Abläufe, die Wiederholung, Zeitlimit und Idempotenz beherrschen. Du arbeitest mit asyncio im Betrieb, verteilst Rechenarbeit auf Prozesse, misst Leistung mit Profiler und numpy und verarbeitest Binärdaten kompakt. Du sprichst Datenbanken mit SQLAlchemy an, entwickelst Schemas mit Alembic, baust HTTP-Schnittstellen mit FastAPI und prüfst Eingaben mit pydantic. Du sicherst Qualität mit Eigenschaftstests, mypy im strikten Modus und ruff, behandelst Geheimnisse, Hashes, Injection und Lieferkette richtig, machst Programme mit strukturierten Protokollen beobachtbar, erweiterst sie mit Plugins, bereitest Releases vor und setzt zum Abschluss einen Dienst mit Tests um. Jede Lektion beginnt mit einem Praxisproblem, zeigt Programme mit echter Ausgabe, lässt dich in verschiedenen Übungen anwenden und endet mit einem Mini-Fall samt Musterlösung. Alle Beispiele wurden mit Python 3.12 und den im Kurs genannten Bibliotheksversionen ausgeführt. Quellen sind die offizielle Python-Dokumentation, die Python Enhancement Proposals (PEP) und die Dokumentation der verwendeten Bibliotheken, jeweils mit Abrufdatum. Alle Personen, Firmen und Zahlen der Beispiele sind erfunden.

Die Kursübersicht enthält 6 Lernfelder und 24 Module. Wähle ein Lernfeld, um seine Module und die Zugangsmöglichkeiten anzusehen.

Lernfelder im Kurs

Sprache und Laufzeit: Typsystem, Deskriptoren, Bytecode und Funktionen höherer Ordnung

Das Typsystem mit mypy nutzen, Klassen mit Deskriptoren und Metaklassen gestalten, Bytecode und Speicher verstehen und Decorators sauber typisieren.

Architektur und Entwurf: Muster, Schichten, Domänenmodell und zuverlässige Abläufe

Entwurfsmuster abwägen, Schichten mit Ports und Adaptern trennen, ein Domänenmodell bilden und Abläufe mit Wiederholung und Zeitlimit absichern.

Gleichzeitigkeit und Leistung: asyncio, Prozesse, Profiling und kompakte Daten

Asynchrone Programme betreiben, Arbeit auf Prozesse verteilen, Engpässe messen und beheben und Binärdaten kompakt verarbeiten.

Daten und Schnittstellen: SQLAlchemy, Migrationen, HTTP-Schnittstellen und Validierung

Datenbanken mit SQLAlchemy ansprechen, Schemas mit Alembic entwickeln, HTTP-Schnittstellen mit FastAPI bauen und Eingaben mit pydantic prüfen.

Qualität und Sicherheit: Eigenschaftstests, statische Analyse, Sicherheit und Beobachtbarkeit

Mit Hypothesis testen, mit mypy und ruff prüfen, typische Sicherheitsfehler vermeiden und Programme mit Protokollen und Kennzahlen beobachtbar machen.

Projekte liefern: Plugins, Release, Abschlussprojekt und Prüfung

Programme mit Plugins erweitern, Releases und Betrieb vorbereiten, ein Abschlussprojekt umsetzen und die Abschlussprüfung bestehen.

Module und Inhalte

Das Typsystem im Detail: Generics, Protocol, TypedDict und die Prüfung mit mypy

Lernfeld: Sprache und Laufzeit: Typsystem, Deskriptoren, Bytecode und Funktionen höherer Ordnung

Typ-Hinweise mit Generics, Protocol und TypedDict schreiben und Programme mit mypy statisch prüfen.

Deskriptoren und Metaklassen: Klassen zur Laufzeit gestalten

Lernfeld: Sprache und Laufzeit: Typsystem, Deskriptoren, Bytecode und Funktionen höherer Ordnung

Attributzugriffe mit Deskriptoren steuern, Klassen mit __init_subclass__ und Metaklassen gestalten und die Grenzen kennen.

Bytecode, Frames und Speicher: dis, __slots__ und Garbage Collection

Lernfeld: Sprache und Laufzeit: Typsystem, Deskriptoren, Bytecode und Funktionen höherer Ordnung

Bytecode mit dis lesen, den Speicherbedarf von Objekten messen und Referenzzyklen und Garbage Collection verstehen.

Funktionen höherer Ordnung: ParamSpec, singledispatch, contextvars und Decorator-Fabriken

Lernfeld: Sprache und Laufzeit: Typsystem, Deskriptoren, Bytecode und Funktionen höherer Ordnung

Decorators mit Parametern und sauberer Signatur schreiben, Funktionen nach Typ verteilen und Kontext mit contextvars führen.

Entwurfsmuster in Python: Strategy, Factory, Observer und wann man sie nicht braucht

Lernfeld: Architektur und Entwurf: Muster, Schichten, Domänenmodell und zuverlässige Abläufe

Entwurfsmuster mit Funktionen, Klassen und Protokollen umsetzen und abwägen, wann sie eine Lösung verbessern oder verkomplizieren.

Schichten und Abhängigkeiten: Ports, Adapter und Dependency Injection

Lernfeld: Architektur und Entwurf: Muster, Schichten, Domänenmodell und zuverlässige Abläufe

Ein Programm in Schichten gliedern, Abhängigkeiten über Ports umkehren und Adapter für Datenbank und Netz austauschbar machen.

Das Domänenmodell: Value Objects, Entitäten, Aggregate und Domänenereignisse

Lernfeld: Architektur und Entwurf: Muster, Schichten, Domänenmodell und zuverlässige Abläufe

Fachliche Regeln in unveränderlichen Value Objects, Entitäten und Aggregaten kapseln und Änderungen als Ereignisse festhalten.

Zuverlässige Abläufe: Wiederholung, Zeitlimit, Idempotenz und Fehlerrichtlinien

Lernfeld: Architektur und Entwurf: Muster, Schichten, Domänenmodell und zuverlässige Abläufe

Abläufe mit Wiederholung, Zeitlimit, Idempotenz und klaren Fehlerrichtlinien so bauen, dass sie Störungen überstehen.

asyncio im Betrieb: TaskGroup, Abbruch, Zeitlimits und asynchrone Generatoren

Lernfeld: Gleichzeitigkeit und Leistung: asyncio, Prozesse, Profiling und kompakte Daten

Asynchrone Programme mit TaskGroup, Abbruch, Zeitlimit und Lastbegrenzung bauen und asynchrone Generatoren einsetzen.

Mehrere Prozesse: multiprocessing, Shared Memory und Arbeitsverteilung

Lernfeld: Gleichzeitigkeit und Leistung: asyncio, Prozesse, Profiling und kompakte Daten

Rechenarbeit mit multiprocessing auf Prozesse verteilen, Daten über Shared Memory teilen und die Kosten der Übergabe abschätzen.

Leistung messen und verbessern: Profiling, Algorithmen und numpy-Vektorisierung

Lernfeld: Gleichzeitigkeit und Leistung: asyncio, Prozesse, Profiling und kompakte Daten

Engpässe mit Profiler und Messreihen finden, Algorithmen verbessern und Schleifen durch numpy-Vektorisierung ersetzen.

Daten kompakt und schnell: array, memoryview, struct und Binärformate

Lernfeld: Gleichzeitigkeit und Leistung: asyncio, Prozesse, Profiling und kompakte Daten

Binärdaten mit array, memoryview und struct lesen und schreiben und bei grossen Datenmengen Speicher und Kopien sparen.

Datenbankzugriff mit SQLAlchemy: Core, ORM, Sitzungen und Abfragen

Lernfeld: Daten und Schnittstellen: SQLAlchemy, Migrationen, HTTP-Schnittstellen und Validierung

Datenbanken mit SQLAlchemy Core und ORM ansprechen, Sitzungen und Transaktionen führen und Abfragen sicher formulieren.

Schema-Entwicklung: Migrationen mit Alembic, Versionen und Rückwege

Lernfeld: Daten und Schnittstellen: SQLAlchemy, Migrationen, HTTP-Schnittstellen und Validierung

Datenbankschemas mit Alembic-Migrationen schrittweise entwickeln, Versionen verwalten und Rückwege planen.

HTTP-Schnittstellen: Anfragen, Statuscodes, JSON und eine API mit FastAPI

Lernfeld: Daten und Schnittstellen: SQLAlchemy, Migrationen, HTTP-Schnittstellen und Validierung

HTTP-Anfragen und Antworten mit Statuscodes und JSON verstehen und eine kleine Schnittstelle mit FastAPI bauen und testen.

Validierung und Konfiguration mit pydantic: Eingaben prüfen und Modelle serialisieren

Lernfeld: Daten und Schnittstellen: SQLAlchemy, Migrationen, HTTP-Schnittstellen und Validierung

Eingaben und Konfigurationen mit pydantic prüfen, Modelle serialisieren und Fehler für Anwendende verständlich melden.

Eigenschaftstests mit Hypothesis: Strategien, Schrumpfen und Zustandsmodelle

Lernfeld: Qualität und Sicherheit: Eigenschaftstests, statische Analyse, Sicherheit und Beobachtbarkeit

Programme mit Eigenschaftstests und Hypothesis prüfen, Strategien entwerfen und gefundene Gegenbeispiele auswerten.

Statische Analyse: mypy strikt, ruff und automatische Prüfungen vor dem Commit

Lernfeld: Qualität und Sicherheit: Eigenschaftstests, statische Analyse, Sicherheit und Beobachtbarkeit

Code mit mypy im strikten Modus und ruff prüfen und die Prüfungen in einen automatischen Ablauf vor dem Commit einbinden.

Sicherheit in Python: Geheimnisse, Hashes, Injection, Deserialisierung und Lieferkette

Lernfeld: Qualität und Sicherheit: Eigenschaftstests, statische Analyse, Sicherheit und Beobachtbarkeit

Typische Sicherheitsfehler in Python erkennen, Geheimnisse und Hashes richtig behandeln und Abhängigkeiten prüfen.

Beobachtbarkeit: strukturierte Protokolle, Kennzahlen und Fehlersuche im Betrieb

Lernfeld: Qualität und Sicherheit: Eigenschaftstests, statische Analyse, Sicherheit und Beobachtbarkeit

Programme mit strukturierten Protokollen, Kennzahlen und Korrelation beobachtbar machen und Fehler im Betrieb eingrenzen.

Plugins und Erweiterungen: Entry Points, importlib.metadata und Registrierung

Lernfeld: Projekte liefern: Plugins, Release, Abschlussprojekt und Prüfung

Ein Programm mit Plugins erweitern, Entry Points und importlib.metadata nutzen und Erweiterungen sicher registrieren.

Release und Betrieb: Versionen, Konfiguration, Container-Konzept und Rückwege

Lernfeld: Projekte liefern: Plugins, Release, Abschlussprojekt und Prüfung

Releases mit Versionsnummern und Changelog vorbereiten, Konfiguration vom Code trennen und Rückwege für den Betrieb planen.

Abschlussprojekt: einen Auftragsdienst planen, bauen, testen und ausliefern

Lernfeld: Projekte liefern: Plugins, Release, Abschlussprojekt und Prüfung

Einen Dienst mit Schichten, SQLAlchemy, pydantic und FastAPI planen, mit Tests und mypy absichern und abnahmefähig ausliefern.

Prüfungsmodul: Fallstudien und Abschlusstest

Lernfeld: Projekte liefern: Plugins, Release, Abschlussprojekt und Prüfung

Drei integrierte Fallstudien und eine Abschlussprüfung mit Auswertung, Fehlerprofil und Wiederholungsempfehlung.

Zugang zum Kurs

Mit deinem Gratiskonto stehen dir alle veröffentlichten Selbstlernkurse und Lernspiele offen, ohne Tageslimit. Nach jeder abgeschlossenen Lerneinheit folgt eine Werbepause. Keine Kreditkarte und kein automatisches Abo.

Gratis Kurs auswählen

Ein Premiumzugang umfasst alle veröffentlichten Selbstlernkurse für CHF 19.90 pro Monat oder CHF 179.00 pro Jahr. Monat und Jahr enthalten dieselben Premiumleistungen. Halloween-Aktion: Bei Abschluss bis einschliesslich 24. November 2026 zahlst du CHF 19.90 pro Monat, solange dein Abo ununterbrochen läuft. Diese lebenslange Preisgarantie gilt auch nach Aktionsende bei jeder monatlichen Verlängerung. Ab 25. November 2026 kosten neue Monatsabos CHF 25.00. Monatlich verlängert; zum Ende des bezahlten Monats kündbar. Beim Jahresabo entspricht das CHF 14.92 pro Monat; der volle Jahrespreis wird jährlich bezahlt und automatisch verlängert, zum Ende der bezahlten Laufzeit kündbar. CHF 59.80 (rund 25 %) günstiger als zwölf Monatszahlungen zum aktuellen Monatspreis.

Nach einer Lektion mit bis zu drei Übungen beziehungsweise einer Übungs-, Lernkarten- oder Spielrunde folgt eine Werbepause. Eigenwerbung und verfügbare Google-Anzeigen wechseln sich ab. Unser Video erfordert mindestens 20 Sekunden sichtbarer, aktiver Wiedergabe. Google startet nur nach ausdrücklicher Auswahl und Einwilligung. Ist Google nicht verfügbar oder liegt keine Einwilligung vor, wird Eigenwerbung angeboten. Es gibt kein tägliches Maximum an Werbepausen. Jede bestätigte Werbepause erlaubt die nächste Lerneinheit; Freigaben lassen sich nicht ansammeln. Premium ist werbefrei.

Premium und Bedingungen ansehen