Я пытаюсь создать веб-приложение, в котором:
- Пользователю в браузере показана таблица (назовите ее table0) со строками (около 1000-1500 строк) и несколькими (5-6) столбцами.
- В зависимости от данных в таблице 0, 3-4 новые таблицы создаются на основе некоторой бизнес-логики.
- Пользователь вносит некоторые изменения (добавление строк, удаление строк, изменение существующих значений строк для определенных столбцов) только в table0. Здесь изменений, внесенных пользователем, может быть много, и соответствующие изменения должны динамически отражаться во всех последующих (сгенерированных) таблицах (поэтому, как только он внесет некоторые изменения в table0, он должен немедленно увидеть обновленную версию). новых таблиц).
Ранее я думал сохранить бизнес-логику (как новые таблицы получаются из table0) в бэкэнде, и всякий раз, когда пользователь изменяет что-либо в пользовательском интерфейсе, в бэкэнд делается вызов API со всеми данными table0, и бэкэнд генерирует новые таблицы и возвращает их обратно в пользовательский интерфейс.
Основным требованием является то, что после каждого изменения, внесенного пользователем в table0, пользователь хотел бы видеть, как выглядят новые (сгенерированные) таблицы. Таким образом (в текущем подходе) происходит пересылка всех данных table0 в Бэкенд много раз по сети, который, я думаю, сделает его медленным и не очень динамичным. Также в будущем число строк может увеличиться и еще больше облегчить эту проблему.
Итак, я думал о переносе бизнес-логики на внешний интерфейс, но везде, где я читаю в сети, я нахожу людей, советующих держать бизнес-логику в бэкэнде. Так есть ли лучшее решение этой проблемы?