Для какого типа приложения / использования лучше всего подходит YAML? - PullRequest
7 голосов
/ 17 сентября 2008

Почему бы выбрать YAML вместо XML или любых других форматов?

Ответы [ 5 ]

9 голосов
/ 17 сентября 2008

Я согласен с Серхио; YAML предоставляет формат, который легко редактируется людьми, но также является хорошим способом для точного представления структур данных.

YAML имеет тенденцию быть намного более читабельным, ИМО.

YAML - это скорее метод сериализации данных, а не язык разметки.

7 голосов
/ 17 сентября 2008

YAML Основными преимуществами являются удобочитаемость и компактность. Да, и он широко поддерживается на разных платформах и языках.

YAML очень популярен в сообществе Ruby, где он в основном используется вместо XML для файлов конфигурации в Rails и Merb, например.

4 голосов
/ 17 сентября 2008

Я бы выбрал YAML, если документы нужно редактировать или создавать людям. Просто мысль.

1 голос
/ 12 декабря 2008

Для какого типа применения / использования лучше всего подходит YAML?

Трудно однозначно ответить. Вместо этого я попытаюсь привести несколько примеров того, что YAML не подходит (по моему скромному мнению).

<name type="string">Orion</name>
<age type="integer">26</age>

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

<user>
  .... 10 lines of stuff
  <sub-user>
    ...15 more lines of stuff
  </sub-user>
  .... 10 more lines of stuff belonging to user
</user>

Это тот случай, когда закрывающие теги в XML дают много преимуществ. Если бы вы отформатировали вышеупомянутые данные в YAML, используя только отступы, чтобы обеспечить «охват», было бы намного сложнее определить, где все начинается и заканчивается.

Для примера приведу цитату из официальной спецификации yaml на yaml.org

YAML - это прежде всего язык сериализации данных. XML был спроектирован так, чтобы быть обратно совместимым со стандартным обобщенным языком разметки (SGML), и поэтому на него было наложено много конструктивных ограничений, которые YAML не разделяет. Унаследовав наследие SGML, XML предназначен для поддержки структурированной документации, где YAML более тесно ориентирован на структуры данных и обмен сообщениями. Где XML является пионером во многих областях, YAML является результатом уроков, извлеченных из XML и других технологий.

0 голосов
/ 12 декабря 2008

Я использую YAML как дешевую и простую замену написанию языка, специфичного для предметной области (особенно в тех случаях, когда другие разработчики будут выполнять обслуживание; я не уверен, что буду использовать его, когда сторонние разработчики будут его поддерживать)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...