← К задачам
Паттерн «Декоратор»: добавки к кофе
Реализуйте паттерн Декоратор.
Базовый класс Coffee: cost() возвращает 50, description() — "Кофе".
Декораторы оборачивают любой напиток (принимают его в конструктор):
Milk— добавляет к стоимости20и", молоко"к описанию;Sugar— добавляет10и", сахар".
Декораторы должны вкладываться друг в друга в любом порядке.
class Coffee:
def cost(self):
...
def description(self):
...
class Milk:
def __init__(self, drink):
...
def cost(self):
...
def description(self):
...
class Sugar:
def __init__(self, drink):
...
def cost(self):
...
def description(self):
...
Для запуска тестов необходима авторизация.