YAML (YAML Ain’t Markup Language) ist eine menschenlesbare Datenserialisierungssprache, die häufig verwendet wird, um Konfigurationsdateien zu schreiben. Im Gegensatz zu XML oder JSON zeichnet sich YAML durch seine einfache und übersichtliche Struktur aus, die auf Einrückungen und einer minimalistischen Syntax basiert. YAML ist darauf ausgelegt, Daten einfach darzustellen, wobei der Schwerpunkt auf Lesbarkeit und Benutzerfreundlichkeit liegt.
Wie funktioniert YAML?
YAML verwendet eine hierarchische Struktur, die auf Einrückungen basiert, um Daten darzustellen. Es unterstützt grundlegende Datentypen wie Listen, Schlüssel-Wert-Paare und Zeichenketten. Die Hauptmerkmale von YAML sind:
- Einrückungen: YAML verwendet Leerzeichen oder Tabs, um die Hierarchie der Daten darzustellen. Anders als bei vielen anderen Formaten gibt es keine Klammern oder andere Begrenzungen.
- Schlüssel-Wert-Paare: Daten werden in Form von Schlüssel-Wert-Paaren dargestellt, wobei ein Doppelpunkt
:
den Schlüssel und den Wert trennt. - Listen: Listen werden durch Bindestriche
-
dargestellt und sind in ihrer Struktur sehr einfach.
Grundlegende YAML-Syntax
Hier sind einige Beispiele für die grundlegende YAML-Syntax:
- Schlüssel-Wert-Paare:
name: Max Mustermann age: 30 city: Berlin
- Listen:
hobbies: - Lesen - Programmieren - Reisen
- Verschachtelte Daten: YAML unterstützt die Verschachtelung von Daten, indem du einfach die Einrückung fortsetzt:
person: name: Max Mustermann age: 30 address: city: Berlin postal_code: 10115
Vorteile von YAML
YAML bietet eine Reihe von Vorteilen, die es zu einer beliebten Wahl für Konfigurationsdateien machen:
- Lesbarkeit: YAML ist leicht lesbar und versteht sich gut ohne überflüssige Klammern, Anführungszeichen oder Sonderzeichen.
- Einfache Struktur: Durch den Verzicht auf komplizierte Syntax ist YAML einfacher zu schreiben und zu pflegen als andere Formate wie XML oder JSON.
- Flexibilität: YAML kann komplexe Datenstrukturen wie Listen, verschachtelte Schlüssel-Wert-Paare und mehr darstellen, ohne an Lesbarkeit zu verlieren.
- Kompatibilität: YAML lässt sich einfach in verschiedene Programmiersprachen integrieren und wird oft in Tools wie Docker, Ansible oder Kubernetes verwendet.
Anwendungsbereiche von YAML
YAML wird häufig für die Konfiguration und Datenverwaltung verwendet. Typische Anwendungsbereiche sind:
- Konfigurationsdateien: YAML wird oft als Format für Konfigurationsdateien in Tools wie Ansible, Kubernetes und Docker Compose verwendet.
- API-Daten: YAML kann zur Darstellung von API-Datenstrukturen in Dokumentationen wie Swagger oder OpenAPI verwendet werden.
- Continuous Integration/Delivery (CI/CD): YAML wird häufig in CI/CD-Pipelines verwendet, um Build-Prozesse und Deployment-Schritte zu definieren (z.B. in GitLab CI oder CircleCI).
- Datenserialisierung: YAML kann verwendet werden, um Daten zwischen verschiedenen Systemen und Anwendungen zu serialisieren und zu übertragen.
YAML vs. JSON
YAML und JSON sind beides Datenserialisierungsformate, die oft in ähnlichen Anwendungsfällen verwendet werden. Hier sind die wichtigsten Unterschiede:
- Lesbarkeit: YAML ist menschenlesbarer als JSON, da es keine Klammern und Anführungszeichen erfordert. JSON ist jedoch einfacher für Maschinen zu verarbeiten.
- Syntax: YAML verwendet Einrückungen, um die Hierarchie darzustellen, während JSON auf geschweifte Klammern und Anführungszeichen angewiesen ist.
- Anwendungsfall: JSON ist häufiger in der Datenübertragung (z.B. APIs) anzutreffen, während YAML oft für Konfigurationsdateien verwendet wird.
Wie du YAML verwendest
YAML ist leicht zu erstellen und zu bearbeiten, da es in einem einfachen Texteditor geschrieben wird. Um YAML in deinen Projekten zu verwenden, musst du die YAML-Datei mit der Endung .yaml
oder .yml
speichern. Hier sind die Schritte:
- Datei erstellen: Öffne einen Texteditor und beginne, deine Daten in YAML-Syntax zu schreiben.
- Einrückung beachten: Achte darauf, die richtige Einrückung zu verwenden, um die Hierarchie darzustellen.
- Datei speichern: Speichere die Datei mit der Endung
.yaml
oder.yml
. - Verwenden: Integriere die YAML-Datei in dein Projekt, z.B. als Konfigurationsdatei für ein Tool wie Docker oder Ansible.