content icon indicating copy to clipboard operation
content copied to clipboard

Статья про JSON Schema

Open jag-k opened this issue 3 years ago • 5 comments

Могу взяться за статью про JSON Schema

Так же как может помочь в написании JSON и YAML файлов с авто-дополнением в IDE (VSCode/Intellj-based)

jag-k avatar Oct 30 '21 14:10 jag-k

Думаю, можно начать с питча: что это такое, почему важно и насколько распространено.

pepelsbey avatar Oct 30 '21 22:10 pepelsbey

@nlopin @igsekor @bespoyasov что скажете?

pepelsbey avatar Oct 30 '21 22:10 pepelsbey

Как написано на самом сайте JSON Schema – это словарь, который позволяет комментировать и проверять документы JSON

Сейчас данная технология используется не только для валидации JSON, но и YAML, GitHub Action и даже API (#2233)

Примеры

При помощи JSON Schema можно:

  • Использовать единый GitHub Action для валидации полей в JSON и YAML файлов в проекте (которых достаточно много, например в Веб-стандартах)
  • Подсказывать какие поля нужны для того или иного файла в проекте
  • Реализовать автодополнение с примерами (как сделано в тех же GitHub Action)
  • Автоматически генерировать код или даже интерфейсы (например, формы отправки данных) на основе схем ссылка

...и многое другое!

Дополнительные возможности

Помимо проверки наличие или отсутствие того или иного поля, в JSON Schema можно:

  • Описать проверку типов
  • Зависимость полей друг от друга (например, взаимоисключение полей)
  • Проверка при помощи RegExp
  • Документация в формате MD или HTML

HTML документацию поддерживают пока только Intellj-based IDE

Надеюсь ответил на вопрос о том, что это такое и зачем нужно))

jag-k avatar Oct 31 '21 01:10 jag-k

Мне нравится идея, давай писать. Наша аудитория в первую очередь веб-разработчики, нужно ориентоваться на них. Что им нужно знать, чтобы работать со схемой и коммуницировать с бэкенд-разработчиками?

Совершенно точно нужно рассказать про применение на фронте и бэке. И обновить статью JSON ссылкой на статью

nlopin avatar Oct 31 '21 09:10 nlopin

@nlopin @igsekor @bespoyasov что скажете?

Отлично, как мне кажется! Стоит действительно написать с позиции контракта между фронтом и бэком.

igsekor avatar Oct 31 '21 13:10 igsekor