気になる
2020/8/28 19:20:00
「YAMLの本来の使い方」を仕様から読み取ってみる | Wantedly Engineer Blogの下記とか役立ちそうですかも?
プログラミング言語のもつデータ構造は必ずしも木構造とは限りません。具体的には
- ノードの共有
- 循環参照
が発生することがあります。こういった情報を適切に書き出すには、同じノードが参照されているという状態を木構造にうまく落としこむ必要があります。そのためにYAMLでは、ノードの初回出現時にノードに名前をつけて、以降ではノードを名前で呼び出すことによってノードの同一性を表現します。
YAMLでコンフィグを書いていて、データ構造キモチイイ〜ってなってる。
人間から見て読み書きしやすい。
-
開始の1行1データで書くのでわかりやすい。カンマ区切り不要。[1, 2, 3]
みたいなのは不可{"list": [1, 2, 3]}
みたいなオブジェクトにしないとならないパーサーは当たり前だが自作しないほうがよい。
JSON Linesみたいなコンピュータによる大量データの逐次処理には向いていないと思う。人の目で(なんとか)管理できる物量のコンフィグを書くのに適している。
あと、複数行テキストも\n
とかを使わず簡単に書ける。先頭行インデントを空白と認識させない仕様なので、よくあるヒアドキュメントだけ先頭行インデントがなくて左側に飛び出してて不格好という事態も防げる。
逆に、長ったらしい1行テキストを改行させて書く方法もある。