YAML是一种数据序列化言语,可让以紧凑且可读的格局存储复杂数据。它关于 DevOps 和虚拟化来说很重要,由于它关于构建高效的数据管理体系和自动化至关重要。尽管经常被开发人员忽视,特别是前端工程师,但它是一个功能强大且简略的东西,把握后能够大大改进工作方式和功率。
本文将快速介绍一下 YAML。
什么是 YAML?
YAML 是一种数据序列化言语,用于以人类可读的形式存储信息。它开始代表 Yet Another Markup Language
,但后来改为YAML Ain't Markup Language
,以差异于真正的符号言语。
它类似于 XML
和 JSON
格局 ,但运用更简约的语法,即便一起坚持类似的功能。YAML 一般用于在基础架构即代码 (IoC) 程序中创立配置文件或在 DevOps 开发管道中管理容器。
YAML 已被用于创立自动化协议,这些协议能够执行 YAML 文件中列出的一系列指令。这意味着体系能够更加独立和呼应敏捷,而无需额外的开发人员关注。
跟着越来越多的公司采用 DevOps 和虚拟化,YAML 正敏捷成为现代开发人员职位的必备技能。经过运用 PyYAML 库、Docker 等盛行技能的支持,YAML 也很容易与现有技能结合。
YAML 与 JSON 与 XML
YAML(.yml
)
- 人类可读代码
- 极简语法
- 专为数据而设计
- 类似于 JSON 的内联款式(是 JSON 的超集)
- 答应评注释
- 不带引号的字符串
- 被认为是
更干净
的 JSON - 高级功能(可扩展数据类型、联系锚点和保留键次序的映射类型)
在nodejs开发中,结合swagger,能够更好的提供 API 文档。
JSON
- 更难阅读
- 明确、严厉的语法要求
- 类似于 YAML 的内联款式(一些 YAML 解析器能够读取 JSON 文件)
- 暂无注释
- 字符串需求双引号
实例:JSON 在 Web 开发中很受欢迎,由于它最合适序列化格局和经过 HTTP 连接传输数据。
XML
- 更难阅读
- 更冗长
- 充当符号言语,而 YAML 用于数据格局化
- 包括比 YAML 更多的特性,比如标签特点
- 更严厉定义的文档形式
实例: XML 最合适需求对验证、形式和名称空间进行精细操控的复杂项目。XML 不是人类可读的,需求更多的带宽和存储容量,但提供了无与伦比的操控。