CommencerCommencer gratuitement

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

Afficher le cours

Instructions

  • Dans la classe YogurtSupplier, définissez la méthode take_order() pour ajouter une commande au dictionnaire self.orders.
  • Respectez le contrat défini par l’interface Supplier en créant une méthode make_delivery() qui affiche un message, puis supprime de self.orders la commande identifiée par order_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 ____.____[____]
Modifier et exécuter le code