Мне просто интересно, как люди, работающие в командах, управляют отношениями между логикой и проверкой в бэкэнде, скажем, в php, и точно такой же логикой и проверкой во внешнем интерфейсе, например в JavaScript?
В идеале, последнее слово должно быть дано бэкэндом, но для того, чтобы сделать приложение более доступным, было бы хорошо имитировать как можно больше во внешнем интерфейсе, используя JavaScript.Я, очевидно, пытаюсь минимизировать дублирование кода, и по мере того, как проекты становятся больше, мне становится все сложнее управлять тем, как интерфейсные элементы «копируются» из серверных компонентов.Опасность заключается в том, что, поскольку они не тесно связаны, иногда проверка внешнего интерфейса может быть «не синхронизирована» с бэкендом, особенно когда есть мошеннический разработчик JavaScript, который считает, что у него есть лучший способ выполнить некоторую проверку.!
У кого-нибудь есть понимание?
РЕДАКТИРОВАТЬ
Чтобы быть более кратким, мой вопрос на самом деле о том, как команды людей управляют «бумажным следом»«когда речь идет о дублировании логики (или о том, как внешний интерфейс обращается к бэкэнду, как предложено Фанисом ниже), а не о фактической реализации.Например, оставляете ли вы комментарии в бэкэнд-коде, говорящие «передний конец копирует / получает доступ к этому биту», или есть более «профессиональный» способ отслеживать, что и что делает?