Ruby:
Trabalhando com YAML

Como fazer:

Ruby vem com uma biblioteca integrada chamada Psych para análise e geração de YAML. Para utilizá-la, você primeiro precisa requerer a biblioteca padrão YAML. Aqui está um exemplo básico para começar:

require 'yaml'

# Hash a ser serializado
person = { name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"] }

# Convertendo o hash para YAML
yaml_data = person.to_yaml

puts yaml_data

Saída de Exemplo:

---
:name: John Doe
:age: 30
:skills:
- Ruby
- JavaScript

Para carregar dados YAML de volta em um objeto Ruby:

loaded_person = YAML.load(yaml_data)

puts loaded_person

Saída de Exemplo:

{name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"]}

Usando Bibliotecas de Terceiros:

Embora a biblioteca padrão seja suficiente para tarefas básicas, para necessidades complexas você pode procurar gems de terceiros como ‘safe_yaml’. Para usar essas bibliotecas, você deve primeiro instalar a gem:

gem install safe_yaml

Depois, você pode usá-la para carregar dados YAML de forma segura, mitigando riscos como instanciação de objetos a partir de fontes controladas pelo usuário:

require 'safe_yaml'

safe_loaded_person = SafeYAML.load(yaml_data)

puts safe_loaded_person

Saída de Exemplo:

{name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"]}

Essa abordagem aprimora a segurança do seu manuseio de YAML, tornando-a uma boa escolha para aplicações que carregam YAML de fontes não confiáveis.