Edocti
Fortgeschrittene technische Ausbildung für den modernen Softwareingenieur
Edocti Training

Fortgeschrittenes Python — Praxis-Patterns für Systeme, Embedded & IoT

Fortgeschritten
21 h
4.8 (237 Bewertungen)

Geplante Sessions

Beginn: 07.09.2026 , 3 Tage
Live online Bestätigt DE ● Instructor-led
€ 450 Anmelden
Fortgeschrittenes Python — Praxis-Patterns für Systeme, Embedded & IoT

Python für IoT & Embedded: Setzen Sie fortgeschrittene Python‑Features effektiv auf Embedded Boards und vernetzten Edge-Geräten ein.

Trainieren Sie hands‑on mit MicroPython, CircuitPython und der nahtlosen Integration von leistungsstarken C‑Libraries.

Lernen Sie, wie Sie Sensoren, Aktuatoren, GPIOs und gängige Hardware-Schnittstellen (UART, SPI, I²C) direkt ansteuern.

Praktische Erfahrung sammeln: Durch ~70% praxisorientierte Labs, inklusive Deployment und Tests auf echten Mikrocontrollern.

Nutzen: Bauen Sie hocheffiziente, performante und fehlertolerante IoT‑Prototypen und Embedded‑Lösungen.

Für wen: Entwickler mit Python‑Kenntnissen, die tief in Systems Programming und IoT/Edge-Umgebungen einsteigen möchten.

Der Kurs bietet zudem Advanced‑Module zu Networking, Performance-Optimierung und sicheren OTA-Deployments.

Fähigkeiten, die Sie lernen werden

MicroPython & CircuitPython Async I/O & Nebenläufigkeit Hardware-Schnittstellen Binäres Parsing & Protokolle C/C++ Interoperabilität Edge Deployment & MQTT Performance Profiling Defensives Programmieren

Curriculum

Modernes Python — kompakt und tief

  • Data Model und Dunder-Protokoll; Context Manager und RAII-ähnliche Patterns
  • Typing Essentials: typing, dataclasses, Protocols, TypedDict, Generics; Runtime vs. statische Checks
  • Structural Pattern Matching (match/case) und wann es die Lesbarkeit erhöht
  • Iterables/Iterators/Generators; generatorbasierte Coroutines vs. async/await
  • Speicher-Basics für Speed: bytes/bytearray/memoryview; Copy vs. View

Async I/O & Concurrency für Systems

  • asyncio Event Loop; Tasks, Cancellations, Timeouts; Backpressure und Queues
  • Threads vs. Processes vs. Async — klug wählen; GIL-Implikationen
  • Subprocess-Management; Piping und Log-Streaming
  • AnyIO/Trio (Überblick) und Blocking-Code via Executor integrieren
  • Lab: Async Serial→MQTT Bridge mit Retries und sauberem Shutdown

Binäres I/O, Parsing und Protokolle

  • struct, array, ctypes; Endianness, Alignment und CRC-Patterns
  • Framing-Strategien für UART/TCP (Length-Prefix, Delimiter, COBS/SLIP)
  • Memory Mapping (mmap) und Zero-Copy Slices; Ringbuffer
  • Lab: Binären Telemetrie-Frame parsen und CRC prüfen

Embedded- & IoT-Schnittstellen

  • Serial (pyserial) und GPIO-Basics (Plattformhinweise); SPI/I2C — Überblick
  • BLE mit bleak (Überblick) und MQTT mit paho-mqtt/httpx-websockets
  • CAN mit python-can (Überblick) und Logging-Strategien auf Geräten
  • SDKs und CLIs für Operatoren paketieren

Packaging & Dependency Management (modern)

  • pyproject.toml (PEP 517/518/621); Build Backends (setuptools/hatchling)
  • Editable Installs, Wheels, Versionierung; Constraints vs. Pins; pipx für Tools
  • Virtuelle Umgebungen (venv) und Projektsisolierung; reproduzierbare Builds
  • Lab: Treiber-Library paketieren und in internes Index publishen

Testing, Qualität und Zuverlässigkeit

  • pytest Fixtures/parametrize; tmp_path, monkeypatch; Coverage-Grundlagen
  • Hypothesis für Property-Based Tests; simples Fuzzing
  • Statische Checks: mypy (relativ strikt), ruff/flake8, black; pre-commit Hooks
  • Defensives Coding: Timeouts, Retries mit Jitter, Circuit Breakers (Skizze)

Performance & Profiling

  • cProfile, Performance Counter, Sampling-Profiler; timeit-Fallstricke
  • Vektorisierung mit numpy; wann numba oder Cython (Überblick)
  • Async vs. Threads für I/O-bound Workloads; Batching und Buffering
  • Lab: Telemetrie-Parser profilieren und Kopien vermeiden

C/C++-Interop und native Geschwindigkeit

  • ctypes und cffi — Trade-offs; sichere Aufrufe nativer Libraries
  • pybind11-Extensions (Design & ABI-Hinweise)
  • Wheels für Linux/Windows/macOS bauen; manylinux und Cross-Compile — Basics
  • Lab: kleine C-CRC-Funktion wrappen und gegen reines Python benchen

Networking und Messaging

  • httpx/requests — Basics; asyncio streams vs. websockets
  • MQTT QoS und Offline-Buffer; Reconnect-Strategien
  • ZeroMQ (Überblick) und nanomsg-Patterns für Edge
  • Lab: robuster Command-Channel über MQTT mit Backpressure

Optionale Module

Optional — MicroPython/CircuitPython und Edge-Deployment

  • Kernlogik nach MicroPython portieren; Constraints und Tipps
  • Firmware-Packaging und OTA-Strategie (konzeptionell)

Optional — Data & ML am Edge (Überblick)

  • Kleine Modelle, Feature Extraction mit numpy/scikit-image
  • On-Device Scheduling und Budget-orientiertes Inference

Kursablauf

  • Teil 1: 09:00–10:30
  • Pause: 10:30–10:45
  • Teil 2: 10:45–12:15
  • Mittagspause: 12:15–13:15
  • Teil 3: 13:15–15:15
  • Pause: 15:15–15:30
  • Teil 4: 15:30–17:30

Haben Sie an diesem Kurs teilgenommen?

Ihre Meinung ist uns sehr wichtig. Teilen Sie Ihre Erfahrungen mit uns und helfen Sie uns, diesen Kurs für zukünftige Teilnehmer weiter zu verbessern.

Feedback teilen

Möchten Sie mehr erfahren? Wir helfen Ihnen gern!

Oder schreiben Sie uns direkt an training@edocti.com.