Einkaufswagen
Loading
Nur noch -1 verfügbar

Metaprogrammierung in Python- Dekoratoren, Deskriptoren und Metaklassen

Aktionspreis
€12.99 (25 % Rabatt)
€9.74
Zum Einkaufswagen hinzugefügt

Metaprogrammierung in Python: Dekoratoren, Deskriptoren und Metaklassen


Ein fortgeschrittener Leitfaden zur dynamischen Steuerung von Verhalten auf Klassen- und Funktionsebene


Inhaltsverzeichnis


Kapitel 1: Was ist Metaprogrammierung?


  • Definition und Motivation
  • Wann ist Metaprogrammierung sinnvoll?
  • Grenzen und Risiken
  • Überblick über Techniken: Reflection, Deskriptoren, Dekoratoren, Metaklassen

Kapitel 2: Funktionen als Objekte – Grundlage der Metaprogrammierung


  • Funktionen sind First-Class Citizens
  • Funktionen als Argumente und Rückgabewerte
  • Closures und Scopes
  • Mini-Projekt: Dynamischer Funktionswrapper

Kapitel 3: Funktionsdekoratoren tief verstehen


  • Aufbau eines Dekorators
  • *args, **kwargs, Rückgabe von Wrappern
  • functools.wraps und Metadaten
  • Mini-Projekt: Logging- und Timing-Dekorator

Kapitel 4: Parametrisierte Dekoratoren


  • Dekoratoren mit Argumenten
  • Dynamisch reagierende Wrapper
  • Mini-Projekt: Zugriffssteuerung mit konfigurierbarem Dekorator

Kapitel 5: Klassen- und Methodendekoratoren


  • Klassen als Argument für Dekoratoren
  • Methoden automatisch registrieren oder anpassen
  • Mini-Projekt: Plugin-System mit Klassendekoratoren

Kapitel 6: Deskriptoren – Kontrollierter Zugriff auf Attribute


  • Was ist ein Deskriptor?
  • __get__, __set__, __delete__ implementieren
  • Unterschied zwischen Daten- und Nicht-Daten-Deskriptor
  • Mini-Projekt: Validierte Eigenschaft mit Deskriptor

Kapitel 7: Die Macht von property und @property


  • Getter, Setter, Deleter definieren
  • Vergleich: @property vs. Deskriptor-Klasse
  • Mini-Projekt: Automatische Formatierung von Benutzereingaben

Kapitel 8: Einstieg in Metaklassen


  • Was ist eine Metaklasse?
  • type, __new__, __init__
  • Klassen bei der Erstellung beeinflussen
  • Mini-Projekt: Klassennamensprüfung mit Metaklasse

Kapitel 9: Praktische Anwendung von Metaklassen


  • Automatisches Registrieren von Unterklassen
  • Attribute und Methoden validieren
  • Konventionen und Strukturen erzwingen
  • Mini-Projekt: Modell-Validierungssystem mit Metaklassen

Kapitel 10: Wann Dekorator, Deskriptor oder Metaklasse?


  • Vergleich der Konzepte
  • Kombinierte Anwendung
  • Best Practices und Empfehlungen
  • Mini-Projekt: Framework-ähnliche Struktur mit allen Techniken

Anhang A: Übersicht magischer Methoden für Metaprogrammierung


  • __getattr__, __getattribute__, __setattr__, __call__, __dir__, __init_subclass__

Anhang B: Nützliche Module und Tools für Metaprogrammierung


  • functools, inspect, types, abc, dataclasses
  • Tipps zur dynamischen Analyse und Erweiterung

Anhang C: Übungsaufgaben mit Lösungen


  • Dekorator mit Logging und Zugriffskontrolle
  • Eigener Deskriptor zur Validierung
  • Metaklasse mit automatischer Namenskonvention
  • Ausführliche Lösungen mit Schritt-für-Schritt-Erklärung


Sie erhalten die folgenden Dateien:
  • EPUB (112KB)
  • PDF (1MB)