Ruby:
Lavorare con YAML
Come fare:
Ruby include una libreria integrata chiamata Psych per l’analisi e l’emissione di YAML. Per utilizzarla, devi prima richiedere la libreria standard YAML. Ecco un esempio base per iniziare:
require 'yaml'
# Hash da serializzare
person = { name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"] }
# Conversione dell'hash in YAML
yaml_data = person.to_yaml
puts yaml_data
Output dell’esempio:
---
:name: John Doe
:age: 30
:skills:
- Ruby
- JavaScript
Per caricare dati YAML di nuovo in un oggetto Ruby:
loaded_person = YAML.load(yaml_data)
puts loaded_person
Output dell’esempio:
{name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"]}
Utilizzo di librerie di terze parti:
Sebbene la libreria standard sia sufficiente per compiti basilari, per esigenze complesse potresti considerare l’uso di gemme di terze parti come ‘safe_yaml’. Per utilizzare tali librerie, devi prima installare la gemma:
gem install safe_yaml
Successivamente, puoi usarla per caricare in modo sicuro i dati YAML, mitigando rischi come l’istanza di oggetti da fonti controllate dall’utente:
require 'safe_yaml'
safe_loaded_person = SafeYAML.load(yaml_data)
puts safe_loaded_person
Output dell’esempio:
{name: "John Doe", age: 30, skills: ["Ruby", "JavaScript"]}
Questo approccio aumenta la sicurezza della tua gestione di YAML, rendendolo una buona scelta per applicazioni che caricano YAML da fonti non affidabili.