Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
19
Оптимизация взаимодействия менеджера с рабочими объектами
Условие задачи
Вопрос: что делает представленный фрагмент и какие способы его улучшения возможны? В коде класс Supervisor (ранее Manager) создаёт два рабочих экземпляра — WorkerA и WorkerB (ранее Worker1 и Worker2) — и последовательно вызывает у каждого из них метод process. Нужно проанализировать текущую реализацию и предложить варианты повышения читаемости, расширяемости и тестируемости кода.
class WorkerA:
def __init__(self):
pass
def process(self):
pass
class WorkerB:
def __init__(self):
pass
def process(self):
pass
class Supervisor:
def __init__(self):
self.w1 = WorkerA()
self.w2 = WorkerB()
def run_jobs(self):
for w in (self.w1, self.w2):
w.process()
s = Supervisor()
s.run_jobs()