Для какого типа приложения/использования лучше всего подходит YAML?
Вопрос
Почему можно выбрать ЯМЛ через XML или любые другие форматы?
Решение
Я согласен с Серджио;YAML предоставляет формат, который легко редактируется людьми, а также является хорошим способом четкого представления структур данных.
YAML имеет тенденцию быть гораздо более читабельным для человека, IMO.
YAML — это скорее метод сериализации данных, а не язык разметки.
Другие советы
ЯМЛГлавные преимущества - удобочитаемость и компактность.Да, и он широко поддерживается на различных платформах и языках.
YAML очень популярен в сообществе Ruby, где он в основном используется вместо XML для файлов конфигурации, например, в Rails и Merb.
Я бы выбрал YAML, если бы документы нужно было редактировать или создавать людям.Просто мысль.
Для какого типа приложения/использования лучше всего подходит 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 и других технологий.
Я использую YAML как дешевую и простую замену написанию предметно-ориентированного языка (особенно в тех случаях, когда обслуживанием будут заниматься другие разработчики);Я не уверен, что буду использовать его, когда его будут поддерживать не разработчики)