© StonePictures/Shutterstock.com
Teil 3: Objekte beschränkter Intelligenz

Mehr Python-Syntax - Klassen und Co.


„Spielsprachen“ zeichnen sich durch das komplette Fehlen einer Klassenstruktur aus. Dabei spielt es eine untergeordnete Rolle, ob sie esoterischer oder prozesstechnischer Natur sind. Die esoterische Programmiersprache Brainfuck alias BF des Schweizer Programmierers Urban Müller aus dem Jahr 1993 und das für Retro-Game-Coding geeignete BASIC-Derivat SmallBASIC zeichnen sich durch ein extrem vereinfachtes Sprachkonzept aus. Sie sind nicht für produktive Softwareentwicklung gedacht, sondern eher zum Schulen methodischer Kompetenzen. Wo und wie ist nun Python zu verorten? Python nimmt wie so oft eine Sonderstellung ein.

Unsere im letzten Heft durchgeführten Experimente bestätigen mit Nachdruck, dass Guido van Rossums Annahmen korrekt sind: Dank der Verwendung des Flask Frameworks konnten wir mit sehr geringem Aufwand ein REST API implementieren. Die dazu notwendige Syntax eigneten wir uns on the Fly an – wer das mit C oder C++ probiert, hat einen mühsamen Tag vor sich.

In Teil 3 der Artikelserie wollen wir uns nun wieder der Python-Sprachspezifikation zuwenden. Insbesondere wollen wir einen Blick auf die Möglichkeiten zur objektorientierten Programmierung werfen. Diese benötigt man in der Praxis nämlich auch in Python – ab einem gewissen Komplexitätsgrad der Aufgabe wird ein lineares Skript zu sperrig bzw. unwartbar.

Duck Sauce – Programmieren mit Entensauce?

Wer wenig Erfahrung mit Python hat, könnte annehmen, dass objektorientierte Programmierung aufgrund der Möglichkeit zum Duck Typing nicht oder nur eingeschränkt möglich ist. Zur Erinnerung: Duck Typing bedeutet, dass der Interpreter ein Objekt, das die geforderten Bedingungen erfüllt, als geeignet betrachtet. Auf der Seite Hacker Noon findet sich hierzu ein Snippet, das Duck Typing nach Ansicht des Autors am besten illustriert [1]. Wir bekommen es hier mit einer Klasse zu tun, die ein Auto repräsentiert. In ihrem Konstruktor nimmt sie einen Verweis auf eine Motorenklasse entgegen, die einige Motorenereignisse bzw...

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang