BaşlayınÜcretsiz Başlayın

Resmî olmayan arayüzler

Resmî olmayan arayüzler, o arayüzü uygulayan tüm sınıflarda tanımlanması gereken bir yöntem kümesi sunar. Aşağıda, resmî olmayan bir arayüz olarak davranacak Supplier adlı bir sınıf bulunuyor. YogurtSupplierın Supplier arayüzünün belirlediği sözleşmeyi yerine getirebilmesi için take_order() ve make_delivery() yöntemlerini tanımlaması gerekir. Bu egzersizde, tam da bunu yapmayı pratik edeceksin.

class Supplier:
  def take_order(self, product_name, quantity):
    pass

  def make_delivery(self, order_id, location):
    pass

Bu egzersiz

Python'da Orta Düzey Nesne Yönelimli Programlama

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • YogurtSupplier sınıfında, take_order() yöntemini self.orders sözlüğüne bir sipariş ekleyecek şekilde tanımla.
  • Supplier arayüzünün belirlediği sözleşmeyi tamamlamak için, bir mesaj yazdıran ve order_id kullanılarak self.orders içindeki siparişi silen bir make_delivery() yöntemi tanımla.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

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 ____.____[____]
Kodu Düzenle ve Çalıştır