kn0ckn0ck, вроде бы Презентационная модель MVVM выглядит как тот промежуточный слой, который мне и нужен (только в моём случае без модификации данных).
Насколько корректно будет дёргать разные сервисы и репозитории из VM для получения связанных данных? Или лучше/правильнее сразу, при создании экземпляра VM, класть в неё все связанные данные?
kn0ckn0ck, изменил предметную область с книг на заболевания. Думаю такая аналогия будет более корректной.
Также, немного дополнил постановку вопроса. Ключевой момент: обе сущности (и Disease, и LocalizedDisease) привязаны к конкретному пользователю и ряд локализованных данных зависит от данных этого пользователя.
Соответственно, для старой сущности (Disease) вопрос локализации всего и вся разруливается (как и полагается) на презентационном слою. Но сейчас в уравнение добавляется новый вид сущностей, который несёт в себе непосредственно всю локализацию (+ всё то, что есть в старом Disease).
Отсюда и вытек вариант о том, что можно бы добавить промежуточную обёртку для данных, полученных из репозитория, перед передачей их на уровень представления.
sim3x: да. При разработке сервиса бывшая команда разработчиков не озадачила себя созданием адекватной архитектурой как БД, так и самого приложения. Какое-то время спасали модификации механизма расчёта этих двух сумм на уровне приложения, но со временем уже не осталось мест, которые можно оптимизировать и как-либо улучшить. Да и давным-давно кто-то из разработчиков сделал механизм для пересчёта баланса по логам.
sim3x, сейчас так и реализовано, но проблема в том, что, при выводе средств пользователем, нужно расчитывать 2 суммы: сумма заработанных средств и сумма введённых средств. Это достаточно затратно по ресурсам получается...
Введённые пользователем средства мы обязаны выводить без выплаты налогов (возврат), а вот из заработанных средств уже необходимо вычетать налоги.
Пользователь скроллит, скроллит, а массив всё увеличивается и увеличивается... Удалять не вариант, т.к. пользователь может нажать на status bar. Точно нет способа лучше?
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Насколько корректно будет дёргать разные сервисы и репозитории из VM для получения связанных данных? Или лучше/правильнее сразу, при создании экземпляра VM, класть в неё все связанные данные?