Interfaces informelles
Les interfaces informelles définissent un ensemble de méthodes qui doivent être présentes dans toutes les classes qui implémentent cette interface. Ci-dessous, une classe nommée Supplier jouera le rôle d’interface informelle. Pour que YogurtSupplier respecte le contrat défini par l’interface Supplier, elle doit définir les méthodes take_order() et make_delivery(). Dans cet exercice, vous allez vous entraîner à faire exactement cela.
class Supplier:
def take_order(self, product_name, quantity):
pass
def make_delivery(self, order_id, location):
pass
Cet exercice fait partie du cours
Programmation orientée objet intermédiaire en Python
Instructions
- Dans la classe
YogurtSupplier, définissez la méthodetake_order()pour ajouter une commande au dictionnaireself.orders. - Respectez le contrat défini par l’interface
Supplieren créant une méthodemake_delivery()qui affiche un message, puis supprime deself.ordersla commande identifiée parorder_id.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
class YogurtSupplier:
def __init__(self):
self.orders = {}
# Finish defining the take_order() method
____:
self.____[f"{product_name}_{quantity}"] = {
"product_name": ____, "quantity": ____
}
# Implement a make_delivery() abstract method
____:
print(f"Delivering order: {order_id} to {location}")
del ____.____[____]