#architecture #coding-style
#архитектура #стиль кодирования
Вопрос:
Я читаю книгу «Чистая архитектура». у меня есть вопрос, пожалуйста, помогите мне ответить:
На этом изображении компонент взаимодействия ссылается на компонент базы данных
-
База данных -> Взаимодействующий
-
Генератор финансовых отчетов использует интерфейс шлюза финансовых данных и финансовых объектов
-
Генератор финансовых отчетов не видит ни одного экземпляра шлюза финансовых данных.
Как класс генератора финансовых отчетов может получать данные без какого-либо экземпляра Financial Data Mapper?
Ответ №1:
На схеме показано, что класс сопоставления финансовых данных реализует интерфейс шлюза финансовых данных. Поскольку генератор финансовых отчетов имеет ссылку на некоторый шлюз финансовых данных, мы можем предположить, что объект реализации (экземпляр) является средством сопоставления финансовых данных в этой архитектуре, поскольку это единственный класс, который реализует интерфейс. Это дает ему доступ к финансовой базе данных.
Если вам нужно создать финансовый отчет на основе какого-либо другого источника данных, отличного от базы данных, вы бы ввели новый источник с его собственной реализацией шлюза финансовых данных.