Chapitre 13. Interfaces, protocoles et ABC
Cet ouvrage a été traduit à l'aide de l'IA. Tes réactions et tes commentaires sont les bienvenus : translation-feedback@oreilly.com
Programme une interface, pas une implémentation.
Gamma, Helm, Johnson, Vlissides, premier principe de la conception orientée objet.1
La programmation orientée objet est une question d'interfaces. La meilleure approche pour comprendre un type en Python est de connaître les méthodes qu'il fournit - son interface - comme nous l'avons vu dans "Les types sont définis par les opérations prises en charge"(chapitre 8).
Selon le langage de programmation, nous avons une ou plusieurs façons de définir et d'utiliser les interfaces. Depuis Python 3.8, nous avons quatre façons, qui sont représentées dans lacarte de typage(Figure 13-1). Nous pouvons les résumer ainsi :
- Dactylographie le canard
-
L'approche par défaut de Python en matière de typage depuis le début. Nous étudions le typage des canards depuis le chapitre 1.
- Dactylographie l'oie
-
L'approche soutenue par les classes de base abstraites (ABC) depuis Python 2.6, qui repose sur des vérifications d'exécution des objets par rapport aux ABC. Letypage des oies est un sujet majeur de ce chapitre.
- Le typage statique
-
L'approche traditionnelle des langages à typage statique comme C et Java ; prise en charge depuis Python 3.5 par le module
typing, et appliquée par des vérificateurs de type externes conformes à PEP 484-Type Hints. Ce n'est pas le thème de ce chapitre. ...
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.
Read now
Unlock full access