tecnologia

O que é YAML?

O que é YAML? – Primeiramente lançada em 2001 e inspirada em linguagens como XML, Python, C, entre outras, YAML ou, acrônimo recursivo para “YAML Ain’t Markup Language” é um formato de serialização de dados legível por humanos, sendo bastante utilizado para arquivos de configuração, assim como o JSON e o XML.

Possui uma sintaxe simples e legível, podendo ser mapeada facilmente pelos tipos de dados mais comuns na maioria das linguagens de alto nível, sendo criada especificamente para funcionar bem em casos de uso comum, como, por exemplo:

  • Arquivos de configuração;
  • Compartilhamento de dados entre linguagens;
  • Depuração de estruturas de dados complexas;
  • Mensagem entre processos, entre outros.

Baseada em indentação, sobretudo é uma linguagem que possui bastante similaridade ao XML e ao JSON que já falamos sobre em artigos anteriores.

Pode ser facilmente implementada, principalmente em linguagens como:

  • Python;
  • JavaScript;
  • PHP;
  • Java;
  • Perl, entre outras.

Principais características

Contudo além da sua familiaridade com XML, possui como principais características:

  • Utilizam um conjunto de caracteres unicode (UTF-8 ou UTF-16);
  • Possui propósito centrado em dados no lugar de documentos marcados;
  • Case sensitive;
  • Pode ser utilizada por diversas linguagens;
  • É mais legível que o XML e JSON;
  • Possui excelente documentação, entre outros.

Sintaxe

A sintaxe do YAML é extremamente simples e legível, salvo como podemos verificar abaixo:

funcionario:
nome: João
idade: 30
sexo: Masculino
profissao: Programador
dependente:
nome: Maria
sexo: Feminino

Conforme visto acima, o YAML permite estruturas os dados de maneira bem simples. Sobretudo no exemplo anterior, determinamos os atributos de um funcionário (nome, idade, sexo e profissâo), além de uma relação com um dependente, que também possui seus atributos (nome e sexo).

Em JSON, a estrutura acima pode ser vista então de seguinte forma:

{
“funcionario”: {
“nome”: “João”,
“idade”: 30,
“sexo”: “Masculino”,
“profissao”: “Programador”,
“dependente”: {
“nome”: “Maria”,
“sexo”: “Feminino”
}
}
}

Podemos concluir que…

É primordialmente uma ótima alternativa para armazenar e estruturar dados a serem transferidos entre diversos sistemas. Possui então uma sintaxe mais limpa e legível que seus principais “concorrentes”, o XML e o JSON e pode ser utilizado em diferentes linguagens de programação.

Leia também: “Por que devo investir em Marketing Digital?