7

为什么要选择YAML而不是 XML 或任何其他格式?

4

5 回答 5

9

我同意塞尔吉奥的观点;YAML 提供了一种易于人类编辑的格式,同时也是一种清晰地表示数据结构的好方法。

YAML 往往更具人类可读性,IMO。

YAML 更像是一种数据序列化技术,而不是一种标记语言。

于 2008-09-17T07:17:11.913 回答
7

YAML的主要优点是可读性和紧凑性。哦,它在各种平台和语言中得到广泛支持。

YAML 在 Ruby 社区中非常流行,在 Rails 和 Merb 中,它主要优先用于 XML 配置文件。

于 2008-09-17T07:14:43.323 回答
4

如果需要人工编辑或创建文档,我会选择 YAML。只是一个想法。

于 2008-09-17T07:08:32.387 回答
1

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.org 官方 yaml 规范的引用

YAML 主要是一种数据序列化语言。XML 被设计为向后兼容标准通用标记语言 (SGML),因此有许多 YAML 不共享的设计约束。继承 SGML 的传统,XML 旨在支持结构化文档,其中 YAML 更紧密地针对数据结构和消息传递。XML 是许多领域的先驱,而 YAML 是从 XML 和其他技术中吸取教训的结果。

于 2008-12-12T02:10:08.347 回答
0

我使用 YAML 作为编写特定领域语言的廉价且简单的替代品(特别是在其他开发人员将进行维护的情况下;我不确定当非开发人员维护它时我会使用它)

于 2008-12-12T02:16:05.327 回答