Я на 100% согласен с тем, что нужно обязательно использовать проверки данных как на стороне клиента, так и на стороне сервера.
Однако в рамках и средах, в которых я работал, подходы, которые я видел, никогда не были СУХОЙ. В большинстве случаев нет плана или шаблона - проверки записываются в спецификации модели, а проверки записываются в форме в представлении. (Примечание: большая часть моего личного опыта связана с Rails, Sinatra и PHP с jQuery)
Обдумывая это, кажется, что не составит труда создать генератор, который, учитывая набор проверок (например, имя модели, поле (я), условие), мог бы производить как необходимый материал на стороне клиента, так и на стороне сервера. Альтернативно, такой инструмент может принимать проверки на стороне сервера (такие как validates
код в модели ActiveRecord) и генерировать проверки на стороне клиента (такие как плагины jQuery, которые затем будут применяться к форме.
Очевидно, что вышеизложенное - это просто размышление «эй, у меня была эта идея», а не формальное предложение. Подобные вещи, безусловно, сложнее, чем казалось, когда идея пришла мне в голову.
Это подводит меня к вопросу: как бы вы подошли к разработке метода «один раз, запустите на сервере и на клиенте» для проверки данных?
Связанные подтемы: существуют ли подобные инструменты для каких-либо конкретных сред или технологий клиент-сервер? Каковы основные недостатки или проблемы с попыткой сохранить только один набор проверок?