более высоким уровнем абстракции, который не обязательно должен работать с одним хранилищем и может испозовать внутри себя несколько дао, а дао в свою очередь привязан к определенной сущности и выполняет простейшие операции не включающие в себя бизнес логику?
Дао это более низкоуровненая штука, которая запросы инкапсулирует, а репо больше направлен на бизнесовую часть
Репозиторий это термин из ддд, он возвращает агрегат. Дао просто работает с данными
Разве? Я думал это просто паттерн,типо если к меня есть штука которая хранит метрики по данным, а этот объект кладет в настоящее хранение правильно и правильно отдает, короче абстракция над хранением
Ну это гейтвей или дао
Во, нашел определение из книги (Хабра). Repository представляет собой все объекты определенного типа в виде концептуального множества. Его поведение похоже на поведение коллекции, за исключением более развитых возможностей для построения запросов
А если класс, например, имеет метод file_info() -> File, который возвращает объект предметной области, и имеет метод save_file() для сохранения файла в системе, то это репозиторий или что? Или вообще не правильно построенный клас?
File_info возвращает объект File? Наверное у объекта File такой метод должен быть
Метод берет информацию с файла в системе, используя стороннюю либу.
Ну тут тогда история, что это не ооп, а объекты это просто коллекция функций.
Буду тогда называть все адаптерами и не париться
Обсуждают сегодня