Я создаю API веб-службы, используя JSON в качестве языка данных.При проектировании структуры данных, возвращаемых из службы, у меня возникают некоторые проблемы с выбором способа устранения пропущенных значений.
Рассмотрим пример: в моем интернет-магазине есть продукт, цена которого пока неизвестна,возможно, потому что продукт еще не был выпущен.Включаю ли я price: null
(как показано ниже) или просто опускаю свойство price
для этого элемента?
{
name: 'OSX 10.6.10',
brand: 'Apple',
price: null
}
Моя главная задача - сделать API максимально простым в использовании.Явное нулевое значение проясняет, что на продукте можно ожидать price
, но с другой стороны это похоже на потерянные байты.Может существовать целый ряд свойств, которые совершенно не относятся к данному конкретному продукту, хотя они актуальны и для других продуктов - следует ли показывать их как явно null
?
{
name: 'OSX 10.6.10',
price: 29.95,
color: null,
size: null
}
Существуют ли "лучшие практики""на дизайн веб-службы, предпочитая явные или неявные нулевые значения?Любой стандарт де-факто?Или это полностью зависит от варианта использования?