Builder Pattern in Python
Изучите Builder Pattern in Python на практическом примере, который можно изменить и запустить онлайн.
Что такое Builder Pattern?
Изучите Builder Pattern in Python на практическом примере, который можно изменить и запустить онлайн.
Когда это использовать?
- Решать повторяющиеся задачи объектного проектирования с помощью проверенных структур.
- Разделять обязанности, чтобы код было проще расширять и тестировать.
- Использовать общую терминологию проектирования при обсуждении архитектуры в команде.
Пример кода
main.py
class ReportBuilder:
# Builder: assemble a complex value one optional part at a time.
def __init__(self):
self.parts = []
def add_title(self):
self.parts.append("title")
return self
def add_chart(self):
self.parts.append("chart")
return self
def build(self):
# Hide the final assembly behind one operation.
return "Report: " + ", ".join(self.parts)
report = ReportBuilder().add_title().add_chart().build()
print(report)
Ожидаемый результат
Report: title, chart
Как это работает
Этот пример демонстрирует Builder Pattern in Python. Измените входные данные, чтобы изучить работу кода.
Измените значения и запустите программу в онлайн-компиляторе Python CodeUtility без локальной установки Python.
Практические задания
Изменяйте входные данные и проверяйте граничные случаи перед работой с большими наборами.
- Замените предметную область примера, сохранив структуру паттерна.
- Сравните паттерн с более простой реализацией и объясните компромиссы.
- Напишите тесты для каждого участника перед добавлением новой реализации.