Home >>> Kurse >>> Spezialthemen >>> Entwurfsmuster

Kundenstimmen


Eine Schulung mit Spannung und Inhalt, geladen und beladen, und immer auf das Wesentliche fokussiert. Danke schön! Ausgezeichneter Trainer, gerne wieder!

Martin Volbes GAD eG über den Kurs "Fortgeschrittene Programmierung in Python" mehr dazu...


The Python Summer Course was a very good opportunity to know almost all about Python. ... Highly recommended!!

Dr. Fabio Lamanna, Complex Transportation Networks, Triest, Italien mehr dazu...


Guter Kurs. Man kommt auch ohne Python-Kenntnisse sehr schnell mit der Bedienung zurecht.

Daniel Fuchs, GIGATRONIK Ingolstadt GmbH, über den Kurs "Python für Programmierer" mehr dazu...


I really liked the training. It matched the expectations of a student. This training is amazing.

Deepti über das Tutorial "Iterators, Generators and Decorators auf der EuroPython 2014" mehr dazu...


Sehr kompetenter Trainer. Der Kurs ist sehr empfehlenswert.

Raout Femmali, DLR Stuttgart über den Kurs "Python für Programmierer und Python für Wissenschaftler und Ingenieure" mehr dazu...


Modul - Entwurfsmuster in Python

Termine für offene Kurse

Kurs nur als In-Haus-Schulung verfügbar. Bitte fragen Sie unter info@python-academy.de nach.

Motivation

Häufig lassen sich Aufgaben nach einem bestimmten Schema lösen. Mit Entwurfsmustern werden Aufgabengruppen und deren Lösung zusammengefasst. Probleme können somit häufig mit bestehenden, erprobten Mustern gelöst werden. Weiterhin bieten Entwurfsmuster die Möglichkeit die Kommunikation zwischen Entwicklern zu vereinfachen, da komplexe Aufgabenstellungen definierte Bezeichnungen erhalten.

Kursinhalt

Besonderheiten von Entwurfsmustern in Python

Viele Probleme können in Python einfacher gelöst werden als in anderen Sprachen. Eine Reihe von Entwurfsmustern sind deshalb nicht nötig bzw. schon implizit in der Sprache enthalten.

Die Prinzipien nach denen pythontypische (eng. pythonic) Programme entstehen werden erläutert und mit Beispielen untersetzt. Dabei werden Themen wie Schönheit von Quelltexten, explizite Programmierung, Einfachheit, Lesbarkeit und Fehlerbehandlung behandelt.

"Es ist einfacher um Vergebung zu bitten als um Erlaubnis"

Eine für Python typische Herangehensweise ist das Prinzip "Es ist einfacher um Vergebung zu bitten als um Erlaubnis" (eng. It's easier to ask for forgiveness than permission (EFAP)). Im Gegensatz zu der in vielen anderen Sprachen üblichen Praxis Fehlerbedingungen vor der Ausführung zu prüfen, wird in Python der Weg des Probierens einer Lösung und entsprechender Reaktion bei Fehlschlagen empfohlen. Unterstützt durch die Möglichkeiten der Ausnahmebehandlung in Python wird es möglich dadurch robuste, und fehlertolerante Programme zu entwickeln.

Metaklassen

Metaklassen sind ein sehr fortgeschrittenes Thema in Python, ermöglichen aber bestimmte Aufgaben elegant zu lösen. Die Funktionsweise vom Metaklassen wird an Beispielen erläutert.

Singleton

Singletons, Objekte von denen es nur eine Instanz geben darf, können in Python auf unterschiedliche Art abgebildet werden. Die verschiedenen Möglichkeiten werden mit Beispielen erläutert.

Null-Objekte

Null-Objekte können anstatt des Typs None verwendet werden, um zusätzliche Tests auf None zu vermeiden. Implementierung, Anwendung sowie Vor- und Nachteile werden behandelt und mit Beispielen untersetzt.

Proxy

Proxy-Objekte sind Stellvertreter für andere Objekte. Aufbau und Anwendung von Proxy-Objekte werden mit Beispielen dargestellt.

Beobachter

Das Beobachter-Muster ermöglicht es mehreren Objekten Zugriff auf die gleichen Daten zu geben. Die Arbeitsweise dieses Entwurfsmusters wird mit einem Beispiel erläutert.

Konstruktor

Konstruktoren weisen ihre Parameter oft Instanzvariablen zu. Neben der expliziten Schreibweise ist es möglich mit einem Entwurfsmuster eine Verkürzung auf eine Programmzeile zu erreichen.

Moduldauer

1 Tag

Ablauf

Die Teilnehmer können alle Arbeitsschritte direkt auf ihrem Computer nachvollziehen. Am Ende jedes Themas können sie das erworbene Wissen durch praktische Übungen festigen.

Kursmaterialien

Jeder Teilnehmer erhält ausführliche Kursunterlagen mit ausformulierten Beschreibungen der Kursinhalte und alle verwendeten Quelltexte in elektronischer Form.

Zielgruppe

Programmierer mit Pythongrundkenntnissen oder Kombination mit Grundkursen (siehe Empfohlene Modul-Kombinationen).

Empfohlene Modul-Kombinationen

Das Modul kann mit den Kursen Python für Nichtprogrammierer oder Python für Programmierer kombiniert werden.

[@pyacademy folgen]


PSF Fundraiser


[PSF Fundraiser]

Die Python Academy ist Sponsor der PyCon US 2020.

[PyCon US 2020]

Die Python Academy ist Sponsor des PythonCamp Köln 2020.

[PythonCamp 2020]

Die Python Academy ist Sponsor des PyCamp Leipzig 2020.

[PyCamp 2020]

Die Python Academy ist Sponsor der PyCon.DE 2019.

[PyCon.DE  2019]

Die Python Academy ist Sponsor der PyCon LT 2019.

[PyCon LT 2019]

Die Python Academy ist Sponsor der PyCon US 2019.

[PyCon US 2019]

Unsere Partner

Partner Inqbus Programming Academy


[Inqbus Programming Academy]

Partner Coding Akademie


[Coding Akademie]
------------

Die Python Academy ist Sponsor des PythonCamp Köln 2019.

[PythonCamp 2019]

Die Python Academy ist Sponsor des PythonCon Nambia 2019.

[PythonCon Nambia 2019]

Die Python Academy ist Sponsor der PyConIE 2018.

[PyConIE 2018]

Die Python Academy ist Sponsor der PyCon.DE 2018.

[PyCon.DE  2018]

Die Python Academy ist Sponsor der PyCon Spain 2018.

[PyCon ES 2018]

Die Python Academy ist Sponsor der PyCon Ghana 2018.

[PyCon GH 2018]

Die Python Academy ist Sponsor der EuroPython 2018.

[EuroPython 2018]

Die Python Academy ist Sponsor der DjangCon Europe 2018.

[DjangCon Europe 2018]

Die Python Academy ist Sponsor der PyCon US 2018.

[PyCon US 2018]

Die Python Academy ist Sponsor des PythonCamp Köln 2018.

[PythonCamp 2018]

Die Python Academy ist Sponsor der PyConIE 2017.

[PyConIE 2017]

Die Python Academy ist Sponsor der EuroPython 2017.

[EuroPython 2017]

Die Python Academy ist Sponsor der PyCon US 2017.

[PyCon US 2017]

Die Python Academy ist Sponsor des PythonCamp Köln 2017.

[PythonCamp 2017]

Die Python Academy ist Sponsor der Django Girls Leipzig 2016

[Django Girls Leipzig 2016]

Die Python Academy ist Sponsor der PyCon DE 2016.

[PyCon DE 2016]

Die Python Academy ist Sponsor der PyCon Ireland 2016.

[PyCon IE 2016]

Die Python Academy ist Sponsor der EuroSciPy 2016.

[EuroSciPy 2016]

Die Python Academy ist Sponsor der PyCon US 2016.

[PyCon US 2016]

Die Python Academy ist Sponsor der PyData Berlin 2016.

[PyData Berlin 2016]

Die Python Academy ist Sponsor der PyCon Sweden 2016.

[PyCon SE 2016]

Die Python Academy ist Sponsor der Python Unconference 2015.

[PyUnconf 2015]

Die Python Academy ist Sponsor der EuroSciPy 2015.

[EuroSciPy 2015]

Die Python Academy ist Sponsor der EuroPython 2015.

[EuroPython 2015]

Die Python Academy ist Sponsor der PyData Berlin 2015.

[PyData Berlin 2015]

Die Python Academy ist Sponsor der PyCon Montréal 2015.

[PyCon Montréal 2015]

Die Python Academy ist Sponsor des Python BarCamp Köln 2015.

[Python BarCamp 2015]https://www.euroscipy.org/2016/

Die Python Academy ist Sponsor der Chemnitzer Linux-Tage 2015.

Chemnitzer Linux-Tage 2015 - 21. und 22. März 2015

Die Python Academy ist Sponsor der Django Girls Wroclaw 2015.

[Django Girls Wroclaw 2015]

Die Python Academy ist Sponsor der PyCon Ireland 2014.

[PyCon Ireland 2014]

Die Python Academy ist Sponsor der EuroSciPy 2014.

[EuroSciPy 2014]

Die Python Academy ist Sponsor der PyData London 2014.

[PyData London 2014]

Die Python Academy ist Sponsor der EuroPython 2014.

[EuroPython 2014]

Die Python Academy ist Sponsor der PyCon 2014 Montréal.

[PyCon 2014 Montréal]

Die Python Academy ist Sponsor des Python BarCamp Köln 2014.

[Python BarCamp 2014]

Die Python Academy ist Sponsor der PyConDE 2013.

[PyCon DE 2013]

Die Python Academy ist Sponsor der EuroPython 2013.

[EuroPython 2013]

Die Python Academy ist Sponsor der PyCon US 2013.

[PyCon US 2013]

Die Python Academy ist Sponsor der EuroSciPy 2013.

[EuroSciPy 2013]

Die Python Academy ist Sponsor der PyConPL 2012.

[PyCon PL 2012]