Interfețe informale
Interfețele informale definesc un set de metode care trebuie implementate în toate clasele ce folosesc acea interfață. Mai jos este o clasă numită Supplier, care va acționa ca o interfață informală. Pentru ca YogurtSupplier să respecte contractul stabilit de interfața Supplier, trebuie să definească metodele take_order() și make_delivery(). În acest exercițiu, vei exersa exact asta.
class Supplier:
def take_order(self, product_name, quantity):
pass
def make_delivery(self, order_id, location):
pass
Acest exercițiu face parte din cursul
Programare orientată pe obiecte intermediară în Python
Instrucțiuni pentru exercițiu
- În clasa
YogurtSupplier, definește metodatake_order()pentru a adăuga o comandă în dicționarulself.orders. - Finalizează contractul stabilit de interfața
Supplierdefinind o metodămake_delivery()care să afișeze un mesaj și să șteargă comanda stocată cuorder_iddinself.orders.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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 ____.____[____]