Skip to Content
Fließendes Python, 2. Auflage
book

Fließendes Python, 2. Auflage

by Luciano Ramalho
August 2024
Intermediate to advanced
1014 pages
26h 54m
German
O'Reilly Media, Inc.
Book available
Content preview from Fließendes Python, 2. Auflage

Kapitel 13. Schnittstellen, Protokolle und ABCs

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Programm für eine Schnittstelle, nicht für eine Implementierung.

Gamma, Helm, Johnson, Vlissides, First Principle of Object-Oriented Design1

Bei der objektorientierten Programmierung dreht sich alles um Schnittstellen. Der beste Ansatz, um einen Typ in Python zu verstehen, ist die Kenntnis der Methoden, die er bereitstellt - seine Schnittstelle - wie in "Typen werden durch unterstützte Operationen definiert"(Kapitel 8) beschrieben.

Je nach Programmiersprache haben wir eine oder mehrere Möglichkeiten, Schnittstellen zu definieren und zu verwenden. Seit Python 3.8 haben wir vier Möglichkeiten. Sie sind in derTyping Map(Abbildung 13-1) dargestellt. Wir können sie wie folgt zusammenfassen:

Ente tippen

Pythons Standardansatz zur Typisierung von Anfang an. Wir haben uns seit Kapitel 1 mit der Typisierung von Enten beschäftigt.

Gans tippen

Der Ansatz, der seit Python 2.6 von abstrakten Basisklassen (ABCs) unterstützt wird und sich auf Laufzeitprüfungen von Objekten gegen ABCs stützt. DieGänsetypisierung ist ein wichtiges Thema in diesem Kapitel.

Statische Typisierung

Der traditionelle Ansatz von statisch typisierten Sprachen wie C und Java, der seit Python 3.5 durch das Modul typing unterstützt und durch externe Typprüfungen gemäß PEP 484-Type Hints erzwungen wird. Das ist nicht das Thema dieses Kapitels. ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Python lernen, 5. Auflage

Python lernen, 5. Auflage

Mark Lutz
High Performance Python, 2. Auflage

High Performance Python, 2. Auflage

Micha Gorelick, Ian Ozsvald
Python in a Nutshell, 4. Auflage

Python in a Nutshell, 4. Auflage

Alex Martelli, Anna Martelli Ravenscroft, Steve Holden, Paul McGuire

Publisher Resources

ISBN: 9781098180362Supplemental Content