YAMLの概要
2016/11/12
YAMLは構造化データを表現するためのフォーマットです。似た位置づけのものにJSONがあります。自分はJSONを使うことが多いのですが、最近YAMLを使う機会があったのでちょっと整理してみました。
公式サイトによるとYAML is a human friendly data serialization standard for all programming languages.
とのこと。
仕様面の概要をさらっと箇条書きでメモ。
- テキストデータなので可読性が高い
- インデントでデータの階層構造を表す
- ハッシュと配列でデータを表す
- ブロックスタイルとフロースタイルの2つの記述方法(混在可能)
- データ型
- 文字列、数値、真偽値、Null、日付の5種類
- 明示的に文字列として扱う場合はシングルクォートかダブルクォートで囲う
- コメント行は
#
で、複数行コメントアウトはできない - 拡張子は
.yaml
,yml
全体的にシンプルな仕様です。ただ、ブロックスタイルとフロースタイルがちょっと引っかかりやすいのでルールを確認。
ハッシュの書き方。
# ブロック
title: foo bar baz
author: Jane Doe
# フロー
{ title: foo bar baz, author: Jane Doe }
配列の書き方。
# ブロック
- foo
- bar
- baz
# フロー
[foo, bar, baz]
フロースタイルだとJSONっぽくなりますね。個人的にはYAMLを使うならブロックスタイルを採用したいです。フロースタイルだったらJSONを使えばいいので。
おススメ