Урок 14: Итоговый проект: архитектура системы заказов
Без проектирования реальная система заказов схлопывается в один гигантский класс, где каждое изменение пугает: ценообразование, почта и база данных переплетены вместе. В этом итоговом проекте мы объединяем идеи курса — единственную ответственность, внедрённые контракты, асинхронный репозиторий, собы
Хорошо спроектированная система — это как кухня ресторана в загруженный вечер: у каждой станции одна задача, заказы проходят через одно фиксированное окно, а когда блюдо готово, звонит колокольчик.
- Итоговый проект: архитектура системы заказов
- Один маленький дизайн, который зримо объединяет records, внедрённые асинхронные контракты и события со всего курса.
- внедрение через конструктор
- Сервис получает свои зависимости как контракты через конструктор — тот, кто собирает систему, выбирает реализации, а не сам сервис.
- доменное событие
- Сервис объявляет, что произошёл факт — «заказ был размещён» — и подписчики реагируют, при этом сервис их не знает.