Моя ментальная модель всего этого дела примерно такая.
Куча разнообразных клиентов, различной природы, посылают на сервер всякую фигню. Сервер всё равно не в состоянии понять все глюки (см. браузеры и плохой html), но его задача - извлечь информацию. Если может извлечь - хорошо; если не может, ну тогда поскипаем.
Можно, конечно, потребовать, чтобы входные данные соблюдали законы, но что это даст? Да ничего, собственно. Более того, в большинстве случаев, если нам какие данные не нужны, так нам и валидировать их не нужно.
Ну, может на мою модель отложился отпечаток того, что каждый decimal - сумма денег в чьем-то кошельке. В данном конкретном случае не о чем торговаться.
Да, входные данные всё равно вынуждены будут соблюдать какие-то свои, неписанные, законы. Плюс только в том, что на входе не будет висеть ультимативное "посторонним В.". Будет не "вы нашему формату не алё", а "да хуй с ними, пидарами, нам проще самим поправить чтобы парсилось".
Да ладно. Типы-то у данных будут в любом случае. Только вместо того, чтобы инфраструктура сама проверила и сказала что-то типа "в account.id лежит не int", где-то будет IsCorrectInt("account.id") в коде, а где-то - какой-нибудь IncorrectFormatException на выходе.
Компрессируете его, или трафик пофиг? Интресно, потому что тоже с мобил запросы гоняю на сервер и всё время жутко жалко послать лишнего — настолько жалко, что BSON применяю.
no subject
Date: 2010-03-18 08:12 pm (UTC)Куча разнообразных клиентов, различной природы, посылают на сервер всякую фигню. Сервер всё равно не в состоянии понять все глюки (см. браузеры и плохой html), но его задача - извлечь информацию. Если может извлечь - хорошо; если не может, ну тогда поскипаем.
Можно, конечно, потребовать, чтобы входные данные соблюдали законы, но что это даст? Да ничего, собственно. Более того, в большинстве случаев, если нам какие данные не нужны, так нам и валидировать их не нужно.
Поэтому я против xml schemas and the like.
no subject
Date: 2010-03-18 08:26 pm (UTC)no subject
Date: 2010-03-18 08:30 pm (UTC)no subject
Date: 2010-03-18 11:20 pm (UTC)no subject
Date: 2010-03-19 07:40 am (UTC)no subject
Date: 2010-03-19 08:47 am (UTC)no subject
Date: 2010-03-19 10:19 pm (UTC)no subject
Date: 2010-03-18 10:27 pm (UTC)no subject
Date: 2010-03-19 08:39 am (UTC)no subject
Date: 2010-03-19 06:35 pm (UTC)no subject
Date: 2010-03-19 08:57 pm (UTC)Интресно, потому что тоже с мобил запросы гоняю на сервер и всё время жутко жалко послать лишнего — настолько жалко, что BSON применяю.
no subject
Date: 2010-03-20 12:47 am (UTC)