YAML
linguaggio di programmazione
AutoreClark Evans
Data di origine3 marzo 2001
Ultima versione1.2.2 (1º ottobre 2021)
Estensioni comuniyaml e yml
Implementazione di riferimento
Sito webyaml.org/

YAML (acronimo ricorsivo di YAML Ain't Markup Language, pronunciato ˈjæməl, in rima con camel ) è un formato per la serializzazione di dati utilizzabile da esseri umani. Il linguaggio sfrutta concetti di altri linguaggi come il C, il Perl e il Python e idee dal formato XML e dal formato per la posta elettronica (RFC2822). [1]

Proposto da Clark Evans nel 2001, è stato sviluppato da quest'ultimo e Brian Ingerson. Nella prima fase di sviluppo l'acronimo veniva definito come "Yet Another Markup Language", significato che è andato perso in favore di un nome che specificasse la natura orientata alla memorizzazione di dati del linguaggio, contrapposto all'utilizzo consono dei linguaggi di markup.[2]

Formato

modifica

Il seguente esempio rappresenta i dati di un'ipotetica fattura in formato YAML: [3]

 --- !<tag:clarkevans.com,2002:invoice>
 
 invoice: 34843
 date   : 2001-01-23
 bill-to: &id001
    given  : Chris
    family : Dumars
    address:
        lines: |
            458 Walkman Dr.
            Suite #292
        city    : Royal Oak
        state   : MI
        postal  : 48046
 ship-to: *id001
 product:
    - sku         : BL394D
      quantity    : 4
      description : Basketball
      price       : 450.00
    - sku         : BL4438H
      quantity    : 1
      description : Super Hoop
      price       : 2392.00
 tax  : 251.42
 total: 4443.52
 comments:
    Late afternoon is best.
    [[Backup]] contact is Nancy
    Billsmer @ 338-4338.

Utilizzi comuni

modifica

Il formato YAML è talvolta usato come file di configurazione al posto di altri formati, come JSON, XML e .properties. Alcuni esempi:

Altri utilizzi sono lo scambio dati, la persistenza di strutture anche complesse e il Log di applicazioni.[9]

Paragone tra i formati YAML e JSON

modifica

Vantaggi del formato YAML:

  • Maggior leggibilità
  • JSON è rapidamente convertibile in YAML
  • Possibilità di concatenazione ottenendo YAML validi
  • Possibilità di autoreferenziarsi
  • Supporto di tipi complessi
  • Supporto di commenti e blocchi di testo
  • Estende il formato JSON

Vantaggi del formato JSON:

  • Compattezza
  • Maggior facilità di apprendimento e utilizzo
  • Maggior diffusione (molti linguaggi supportano nativamente serializzatori di JSON)

Note

modifica
  1. ^ (EN) YAML Ain’t Markup Language (YAML™) Version 1.2, su yaml.org, 1º ottobre 2021. URL consultato il 23 giugno 2020.
  2. ^ (EN) Chellammal Surianarayanan, Essentials of Microservices Architecture. URL consultato il 23 giugno 2020.
  3. ^ Esempio tratto dalle specifiche ufficiali [1]
  4. ^ Documentazione ufficiale di Kubernetes [2]
  5. ^ Documentazione ufficiale di Spring Boot [3]
  6. ^ Blog di perl.com [4]
  7. ^ (EN) Understanding GitHub Actions, su GitHub Docs. URL consultato il 5 ottobre 2021.
  8. ^ (EN) Home Assistant, YAML, su Home Assistant. URL consultato il 27 ottobre 2021.
  9. ^ Articolo su DZone.com [5]

Voci correlate

modifica

Collegamenti esterni

modifica
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica

📚 Artikel Terkait di Wikipedia

AOMedia Video 1

loggati su GitHub in GitHub Actions). MPV, VLC Media Player dalla versione 3.0. StaxRip (Avisynth e FFmpeg). Fastflix (FFmpeg). Anche su GitHub ci sono altri

Bitcoin

BitCoin, su github.com. URL consultato il 21 aprile 2011 (archiviato il 6 maggio 2013). ^ poclbm, Python OpenCL bitcoin miner, su github.com. URL consultato

Organizzazione mondiale della sanità

il 24 novembre 2005). ^ (EN) WHO pandemic phase descriptions and main actions by phase (PDF), su who.int, OMS. URL consultato il 29 aprile 2009 (archiviato

Next.js

Barron, Next.js 14 is now officially available, with addition of Server Actions and Partial Prerendering features, su SD Times, 26 ottobre 2023. URL consultato

Vivaldi (browser)

2020. URL consultato il 12 giugno 2020. ^ (EN) Vivaldi introduces Page Actions: Change the look of web pages on Android, su vivaldi.com, 4 febbraio 2021

Google Keep

Android: Notes, Checklists, Voice Notes, Pictures, Widgets, And Voice Actions Integration, su Android Police, 20 marzo 2013. URL consultato il 22 febbraio

React (web framework)

dispatcher. Questo modello viene talvolta espresso come "properties flow down, actions flow up". Molte implementazioni di Flux sono state create sin dalla sua

Pandemia di COVID-19

(FR) Du Ministere de la sante et du développement social sur le suivi des actions de prevention et de riposte face a la maladie a coronavirus, su sante.gov