214 похожих чатов

А можно нубский вопрос? Вот к примеру есть профайл. есть интерактор

который загружает этот профайл из базы/загружает профайл из сети/создает пустой (это три разных usecase, правильно?)
1. результат их действия объединяется в каком месте? ну там получить данные из трех источников сравнить между собой выбрать оптимальный?
2. результат их действия хранится в каком месте? к примеру хочется сохранить профайл в памяти до следующего обновления.

3 ответов

3 просмотра

1. если я правильно понял то интерактор должен думать сравнивать (логика сравнения у него) а репо только предоставить интерфейсы для работы с источниками 2. опять же имхо в репо надо делать методы для сохранения и загрузки результатов, а куда и как это он пускай разбирается ,но могу ошибаться

1. Логика же как-то описана, верно? Соответственно, интерактор. 2. Варианты разные, тут в зависимости от требований. У репозитория может быть кэш, например.

Смотря какая задача, если нужно показать сначала кэш, потом данные с сервера, то для этого можно использовать один UseCase. UseCase может сам выбрать кэш или удаленный источник, может об этом вообще ничего не знать, существуют разные подхходы. Создание профайла это отдельный UseCase да. Объеденять разные UseCase можно в интеракторе, интерактор содержать несколько UseCase и может их комбинировать. Выбор оптимальных данных по параметрам это же ваша бизнес логика?

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
Вот еще странный косяк, подскажите как бороться. Я git clone сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в приме...
Lukutin R2AJP
2
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Карта сайта