Что такое XML и JSON. Их особенности.

Помимо HTML, картинок и видео на сайте необходимо передавать и отображать различную информацию.
Сейчас я говорю про массивы данных, про сложную иерархическую структуру.
Для передачи информации как в интеграции, так и для сайтов используются определенныей форматы данных.
JSON и XML используются для получения и отправки данных с веб-сервера.

JSON (англ. JavaScript Object Notation) —  простой формат обмена данными, основанный на языке программирования JavaScript. Использует человекочитаемый текст для передачи объектов данных.

Пример синтаксиса:
«employees»:[
{«firstName»:«Lev», «lastName»:«Tolstoy»},
{«firstName»:«Anna», «lastName»:«Karenina»},
{«firstName»:«Aleksey», «lastName»:«Vronsky»},
]

Синтаксические правила JSON

  • Данные указываются в парах имя / значение, разделяемые двоеточием «firstName»:«Lev»
  • Данные разделяются запятыми «firstName»:«Anna», «lastName»:
    «Karenina»
  • Фигурные скобки удерживают объекты {«firstName»:«Lev»,«lastName»:«Tolstoy»},
  • Квадратные скобки содержат массивы

Преимущества JSON

  • Меньше слов больше дела
    XML требует открытия и закрытия тегов, а JSON использует пары имя / значение, четко обозначенные «{«и»}» для объектов, «[«и»]» для массивов, «,» (запятую) для разделения пары и «:»(двоеточие) для отделения имени от значения.
  • Размер имеет значение
    При одинаковом объеме информации JSON почти всегда значительно меньше, что приводит к более быстрой передаче и обработке.
  • Близость к javascript
    JSON является подмножеством JavaScript, поэтому код для его анализа и упаковки вполне естественно вписывается в код JavaScript.

XML
XML — язык разметки, который определяет набор правил для кодирования документов в формате, который читается человеком и читается машиной. Но чем больше информации (вложений, комментариев, вариантов тегов и т.д.) в xml, тем сложнее ее читать человеку.

XML хранит данные в текстовом формате. Это обеспечивает независимый от программного и аппаратного обеспечения способ хранения, транспортировки и обмена данными. XML также облегчает расширение или обновление до новых операционных систем, новых приложений или новых браузеров без потери данных.

Пример синтаксиса:

Синтаксис XML

  1. Весь XML документ должен иметь корневой элемент.
  2. Все теги должны быть закрыты (либо самозакрывающийся тег).
  3. Все теги должны быть правильно вложены.
  4. Имена тегов чувствительны к регистру.
  5. Имена тегов не могут содержать пробелы.
  6. Значения атрибута должны появляться в кавычках («»).
  7. Атрибуты не могут иметь вложения (в отличие от тегов).
  8. Пробел сохраняется.

Преимущества:

  • Поддержка метаданных
    Одним из самых больших преимуществ XML является то, что мы можем помещать метаданные в теги в форме атрибутов. В JSON атрибуты будут добавлены как другие поля-члены в представлении данных, которые НЕ могут быть желательны.
  • Визуализация браузера
    Большинство браузеров отображают XML в удобочитаемой и организованной форме. Древовидная структура XML в браузере позволяет пользователям естественным образом сворачивать отдельные элементы дерева. Эта функция будет особенно полезна при отладке.
  • Поддержка смешанного контента
    Хорошим вариантом использования XML является возможность передачи смешанного контента в пределах одной и той же полезной нагрузки данных. Этот смешанный контент четко различается по разным тегам.

Для наглядности представим сходства и различия XML и JSON в виде таблицы.

Метки
#Тестирование ПО (3)Android (1)Cache (1)Cookie (1)courses (1)HR (1)iOS (2)ISTQB FL (1)java (1)Jedi Point (8)JSON (1)kaizen (2)pairwise (1)QA (14)QualityLab (1)REST API (1)selenium (1)SOAPUI (1)SOAP UI (1)softskills (1)softwaretesting (1)SQA Days-25 (1)sql (5)TestSuites (1)usability (2)web (1)XML (1)БАГИ (1)Исследовательское тестирование (2)Истории поинт (8)Команда разработки (1)Курс тестирования для начинающих (1)Кэш (1)Мнемоники (1)Мнемоники в тестировании (1)Нина Агеева (4)ПОИНТ (38)ПРомо-вебинар (1)Роман Буданов (3)Скриншот (3)Таблица решений (1)Тестирование (16)Тестирование ПО (3)Тест менеджмент (1)Тренер (11)Туры (1)автоматизация (2)алгоритмы (1)баг (1)безопасность (1)бесплатный вебинар (1)введение в тестирование (1)граничные значения (1)декомпозиция (1)домашки (1)займемсяпоинтом (1)игры (1)идеальный мир (1)интернет (1)истории выпускников (8)как надо тестировать (2)комбинаторика (1)конференция (1)котик (1)курс для начинающих тестировщиков онлайн (1)лайфхак (1)минутка юмора (1)мобилки (3)мобильное тестирование (4)настройка мозгов (1)начинающий тестировщик (7)негативное тестирование (2)обучение (1)обучение тестированию (6)организация тестирования (1)персонажи (1)планирование (1)постановка мозгов (2)работа над ошибками (1)рабочий процесс (1)радиоСаня (1)режим разработчика (3)резюме (1)сертификация ISTQB FL (1)скринкаст (1)сопроводительное письмо (1)с чего начать (1)тайм-менеджмент (1)тест дизайн (1)тестировани (1)тестирование usability (2)тестирование безопасности (1)тестирование веб (2)тестирование игр (3)тестирование мобильных приложений (1)тестировщик (5)улучшайзинг (1)ученик (2)фреймворки (1)чеклист (1)чит лист (1)что должен делать тестировщик (1)ятренерпоинт (1)
С 2.12 по 3.02, ОНЛАЙН Зарегистрироваться