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

Kundenstimmen


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 ...


Sehr schöne Schulung, kann viele Anregungen mitnehmen.
Dr.-Ing. Ralf Wieland, Institut für Landschaftssystemanalyse, Leibniz-Zentrum für Agrarlandschaftsforschung e.V. über den Kurs "Python für Wissenschaftler und Ingenieure" mehr dazu ...


Mike is an outstanding teacher ... I will look for his classes in the future.
Jennifer Trasti, Software/Systems Engineer, Sandia National Laboratories, Albuquerque, NM, USA 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 ...


We had a wide range of Python experience in our group and each person gained something valuable to take away....

Dr. Ryan Woodard, Chair of Entrepreneurial Risks, ETH Zürich, Schweiz mehr dazu ...


Den Kurs kann ich bedingungslos allen empfehlen, die innert kurzer Zeit zu einer produktiven Arbeit mit Python kommen wollen.
Dr. med. Beat Meister, Bern mehr dazu ...


The standard Python for programmers and the customized "Python for Experts" course where a great success. ...
Bart Hillaert, Alcatel-Lucent Belgien mehr dazu ...


[The trainer] knows well what scientists need, so his hints are very practical and valuable. The hands-on course [..] covers a wide range of examples and will be very helpful in my daily work. ...
Dorota Jarecka, University of Warsaw about the course "Python for Scientists and Engineers" mehr dazu ...


The course "Python for Scientists and Engineers" is a very useful introduction to Python programming for scientific applications ...
Dr. Mihai Duta, Oxford Supercomputing Centre mehr dazu ...


Sehr gute Einführung in die Programmiersprache ...
Matthias Enderle mehr dazu ...


Die Python Academy ist Sponsor der PyCon US 2012.

[PyCon US 2012]

Modul - Entwurfsmuster in Python

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.

Singelton

Singeltons, 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

0,5 Tage

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 eine CD mit allen verwendeten Quelltexten und genutzter Software.

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.

News


Gründer der Python Academy erhält PSF Community Service Award
mehr dazu ...


Kurs: "Python for Programmers" (Englisch) in Leipzig vom 6. - 8. Februar 2012
details ...


Kurs: "SQLAlchemy" (Englisch) in Leipzig am 9. Februar 2012
details ...


Kurs: "Camelot" (Englisch) in Leipzig am 10. Februar 2012
details ...


Nächster Pythonstammtisch am 14. Februar 2012
mehr dazu ...


Kurs: "Python for Scientists and Engineers" (Englisch) in Chicago (USA) 27. Februar bis 2. März
mehr dazu ...


Tutorial: "Faster Python Programs through Optimization" (Englisch) in Santa Clara (USA) am 7. März auf der PyCon US 2012
mehr dazu ...


Tutorial: "Plotting with matplotlib" (Englisch) in Santa Clara (USA) am 8. März auf der PyCon US 2012
mehr dazu ...


Vortrag: "Python and HDF5 - Fast Storage for Large Data" (Englisch) in Santa Clara (USA) am 10. März auf der PyCon US 2012
mehr dazu ...


Kurs: "Python für Programmierer" in Leipzig vom 16. - 18. April 2012
mehr dazu ...


Kurs: "Python für Wissenschaftler und Ingenieure" in Leipzig vom 19. - 21. April 2012
mehr dazu ...


Kurs: "Einstieg in Django" in Leipzig vom 23. - 25. April 2012
mehr dazu ...


Kurs: "Django für Fortgeschrittene" in Leipzig vom 26. - 27. April 2012
mehr dazu ...