Этот вопрос может быть довольно широким, но я надеюсь на какой-то ответ, который может подтолкнуть меня в каком-то направлении.
Допустим, я создаю календарь событие .Клиент извлекает события с сервера.Каждое событие имеет дату , и после того, как дата прошла, событие состояние считается выполнено .Таким образом, есть некоторая логика, связанная с определением, выполнено ли событие или нет, в этом примере это просто.Представьте, что уровень логики намного более сложный, где приложение должно выполнять эту логику?
Вариант 1 - Хранить в базе данных
Итаквариант будет хранить его в базе данных.Недостатком, конечно, было бы поддержание согласованности данных, и для поддержания их в актуальном состоянии потребовалось бы использование триггеров.
Вариант 2. Сохранение логики на сервере
Каждый раз, когда клиент запрашивает данные, выполняйте логику на сервере и отправляйте ее в ответ.Недостатком здесь является то, что клиент будет делать много небольших записей в базу данных, так что серверу придется каждый раз выполнять эту логику, что может быть довольно интенсивным.
Вариант 3 - Сохранить логику на клиенте
Клиент выбирает данные и затем выполняет логику.Недостатком здесь является то, что клиенту необходимы все необходимые данные для выполнения логики, данные, которые он может не иметь.Также требуется, чтобы каждый клиент (веб и приложения) реализовывал свою собственную логику, когда данные действительно должны быть независимыми от платформы.