简述 YAML

简介: 笔记

1.pngYAML是一种数据序列化语言,可让以紧凑且可读的格式存储复杂数据。它对于 DevOps 和虚拟化来说很重要,因为它对于构建高效的数据管理系统和自动化至关重要。虽然经常被开发人员忽视,特别是前端工程师,但它是一个功能强大且简单的工具,掌握后可以大大改善工作方式和效率。

本文将快速介绍一下 YAML。


什么是 YAML?


YAML 是一种数据序列化语言,用于以人类可读的形式存储信息。它最初代表 Yet Another Markup Language,但后来改为YAML Ain't Markup Language,以区别于真正的标记语言。

它类似于 XMLJSON 格式 ,但使用更简约的语法,即使同时保持类似的功能。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 不是人类可读的,需要更多的带宽和存储容量,但提供了无与伦比的控制。


相关文章
|
7月前
|
JSON Linux 开发工具
「译文」给讨厌 YAML 的人的 10 个写 YAML 的建议
「译文」给讨厌 YAML 的人的 10 个写 YAML 的建议
|
3月前
|
XML JSON 数据格式
YAML语言介绍
YAML语言介绍
21 0
|
4月前
|
Kubernetes API 容器
在K8S中,deployment的yaml文件如何编写呢?
在K8S中,deployment的yaml文件如何编写呢?
|
5月前
|
JSON API 数据格式
从零开始:什么是 YAML?
YAML 是 "YAML Ain't Markup Language" 的缩写,这是一种用于数据序列化的基于文本的标记语言。
|
JSON 数据格式
|
Kubernetes JavaScript 前端开发
YAML+PyYAML笔记 1 | YAML简介和基础知识了解
YAML+PyYAML笔记 1 | YAML简介和基础知识了解
98 0
|
XML 存储 JSON
YAML教程:5分钟内开始使用YAML
YAML教程:5分钟内开始使用YAML
1297 0
|
JSON Java Go
一日一技:不用游标卡尺,Yaml 格式5分钟入门
一日一技:不用游标卡尺,Yaml 格式5分钟入门
147 0
|
存储 JSON Kubernetes
编写 K8S YAML
编写 K8S YAML
565 0
编写 K8S YAML
|
关系型数据库 MySQL Docker
简化 Kubernetes Yaml 文件创建
如果需要自动化处理复杂的Kubernetes任务,常常需要编写Yaml配置文件。由于Yaml文件格式比较复杂,即使是老手有时也不免会犯错或需要查询文档,也有人开玩笑这是使用 Yaml 编程。我们今天将介绍几个方法来帮助大家来简化 Kubernetes Yaml 文件创建。
16955 0