Я создаю веб-приложение
Frontend - реагирование и бэкэнд Java.
Интерфейс и бэкэнд общаются друг с другом через отдых.
В пользовательском интерфейсе я показываю список элементов.И мне нужно отфильтровать их по некоторым параметрам.
Вариант 1: логика фильтра находится на переднем конце
В этом случае мне просто нужно сделать вызов get для бэкэнда и получить все элементы.После того, как пользователь выберет какой-либо параметр фильтра, в пользовательском интерфейсе происходит фильтрация.
Плюсы : для этого мне не нужно отправлять данные на сервер и ждать ответа.Скорость обновления списка должна быть быстрее.
Минусы : если мне понадобится несколько клиентских приложений.Допустим, мобильное приложение.Затем мне нужно создать фильтры снова в этом приложении.
Опция 2: логика фильтра на заднем конце
В этом случае я получаю все элементы списка при загрузке приложения.После того, как пользователь изменил параметры фильтра, мне нужно отправить запрос get с параметрами фильтра и дождаться ответа.После этого обновите список элементов в пользовательском интерфейсе.
Плюсы : логика фильтра записывается только один раз.
Минусы : Скорость, вероятно, будет намного ниже.Потому что для отправки запроса и получения результата требуется время.
Вопрос : Где должна быть логика фильтра?В интерфейсе или в интерфейсе?Или, может быть, что является лучшей практикой?