Einkaufswagen
Loading
Nur noch -1 verfügbar

Design Patterns mit Python- Ein praxisorientierter Leitfaden

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

Design Patterns mit Python: Ein praxisorientierter Leitfaden


Wiederverwendbare Lösungen für typische Softwareprobleme in Python – objektorientiert, flexibel und verständlich


Inhaltsverzeichnis


Kapitel 1: Was sind Design Patterns – und warum sind sie wichtig?


  • Ursprung und Klassifikation von Entwurfsmustern
  • Ziele: Wiederverwendbarkeit, Klarheit, Erweiterbarkeit
  • Die drei Musterkategorien: Erzeugungs-, Struktur- und Verhaltensmuster
  • Designprinzipien nach SOLID und GRASP

Kapitel 2: Einrichtung und Grundlagen in Python


  • Objektorientierte Grundlagen wiederholen
  • Sprachmerkmale von Python: Dynamik, Duck Typing, First-Class Functions
  • Empfehlungen für pythonische Pattern-Implementierung
  • Mini-Projekt: Muster-Vorlage für alle Beispiele im Buch

Kapitel 3: Erzeugungsmuster (Creational Patterns)


  • Singleton: Eine Klasse – genau ein Objekt
  • Factory Method: Erstellung von Objekten durch eine Schnittstelle
  • Abstract Factory: Familien von Objekten erzeugen
  • Builder: Schrittweise Erstellung komplexer Objekte
  • Prototype: Objekte durch Klonen duplizieren
  • Mini-Projekt: Konfigurierbares UI-Komponenten-System

Kapitel 4: Strukturmuster (Structural Patterns)


  • Adapter: Schnittstellen kompatibel machen
  • Decorator: Verhalten zur Laufzeit hinzufügen
  • Facade: Eine einheitliche Schnittstelle nach außen
  • Composite: Objektbäume mit einheitlicher Behandlung
  • Bridge: Abstraktion und Implementierung trennen
  • Proxy: Stellvertreter für kontrollierten Zugriff
  • Mini-Projekt: Plugin-Manager mit Adapter und Proxy

Kapitel 5: Verhaltensmuster (Behavioral Patterns)


  • Observer: Änderungen an einem Objekt abonnieren
  • Strategy: Austauschbare Algorithmen zur Laufzeit
  • Command: Befehle kapseln und rückgängig machen
  • State: Objektverhalten abhängig vom Zustand
  • Template Method: Gerüstmethoden mit überschr. Schritten
  • Chain of Responsibility: Anfragekette mit Verarbeitung
  • Mediator, Iterator, Visitor (kurz vorgestellt)
  • Mini-Projekt: Texteditor mit Undo-Funktion (Command)

Kapitel 6: Designmuster in realen Python-Projekten


  • Wo werden Design Patterns in Web-, GUI- und Datenprojekten verwendet?
  • Kombinierte Muster in Frameworks (z. B. Django, Flask, PyQt)
  • Mini-Analyse: Flask-Routing mit Strategy und Decorator

Kapitel 7: Best Practices im Umgang mit Patterns


  • Muster richtig erkennen und nicht überstrapazieren
  • Refactoring mit Hilfe von Design Patterns
  • Testbarkeit und Modularität durch Muster
  • Mini-Projekt: Refactoring eines Legacy-Moduls mit Strategy

Kapitel 8: Moderne und funktionale Muster in Python


  • Dependency Injection (DI) auf Python-Art
  • Monostate, Null Object, Lazy Initialization
  • Funktionale Alternativen zu OO-Mustern
  • Mini-Projekt: Datentransformation mit Pipelines (Chain of Responsibility)

Kapitel 9: Kombination und Variation von Mustern


  • Mehrere Muster gleichzeitig einsetzen
  • Anti-Patterns und häufige Fehler
  • Erweiterbare Architekturen durch kluge Kombination
  • Mini-Projekt: Mini-Webframework mit Template + Factory + Observer

Kapitel 10: Eigene Patterns entwickeln und dokumentieren


  • Von der Idee zum dokumentierten Muster
  • Struktur eines Pattern-Templates (Intent, Structure, Example, Consequences)
  • Dokumentation und Kommunikation im Team
  • Abschlussprojekt: Modulares Analyse-Toolkit mit mehreren Mustern

Anhang A: Überblick aller Design Patterns im Buch


  • Kompakte Tabelle mit Kategorie, Einsatzzweck, Beispielprojekt

Anhang B: Vergleich mit Java/C++ Patterns


  • Was funktioniert anders in Python – dynamische Typisierung, Duck Typing etc.
  • Empfehlungen für den „Pythonic Way“

Anhang C: Übungsaufgaben mit Lösungen


  • Singleton + Logger
  • Factory mit mehreren Produktklassen
  • Observer für Eventmanagement
  • Strategy in einem Rechensystem
  • Ausführlich kommentierte Lösungen


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