フリーエンジニアの長瀬です。みなさんはYAMLを使っていますか?YAMLは構造化されたデータを表現するためのフォーマットで、設定ファイルやログファイルなどでよく使われています。YAMLを使えば、簡潔にデータを取り扱うことができて便利です。【発展】YAMLの成形といった内容についても解説していきます。Language」と言います。冒頭にも書いたように、構造化されたデータを扱うフォーマットです。設定ファイルやログファイルによく使用されています。つを組み合わせてデータを表現します。配列は先頭に「-」を付けて表現します。「-」の後ろには半角スペースが必要である点に注意が必要です。値」の形式でコード化します。以上入れるようにしてください。半角スペースの代わりとしてTabコードは使えませんのでご注意を。barスカラースカラーという言葉自体はよく、ベクトルと比較して使われます。ベクトルが速度のように大きさと方向を持つ量に対して、スカラーは大きさのみを持つ量を指します。Rubyでは配列やハッシュのような、他のデータを要素としてもつデータはコレクションと呼び、それ以外のデータはスカラーと呼んで区別しています。それ以外のデータは具体的には文字列や数値、真偽値などですね。スカラーの具体例を下記に示します。文字列YAMLの読み込みYAMLファイルは外部ファイルとして保存し、それを読み込むことができます。読み込む際にはload_file()を使います。上記のYAMLファイルを読み込むときは下記のようにコーディングします。YAML.load_file('schedule.yaml').join(",")load_file()の引数としてYAMLファイル名を指定します。[実行結果]Monday,,ご飯作り,掃除,会議YAMLの書き込み次にYAMLファイルへ書き込む方法についてです。書き込みにはdump()メソッドを用います。bar1つ目の引数にはYAMLフォーマットへ変換するオブジェクト、2つ目の引数には変換したYAMLを出力する先のIOオブジェクトを指定します。配列やハッシュをネストするインデントを深くしていくことで、配列やハッシュはネスト化することができます。"peach"]このように、第2要素がbananaとgrapeの配列になります。"C"=>"peach"}配列の場合と同様に第2要素にハッシュが入っています。インデントをさらに深くしていくことで、さらにネストを深くしていくことができます。配列の中にハッシュを含めたり、ハッシュの中に配列を含めたりといってたことも可能です。スカラーの自動データ型判別スカラーのデータは自動で型が判別されます。実際に値によって型が自動で判別されるのかサンプルコードで確かめていきましょう。"symbol"=>:bar}このように、例えば0xEBは16進数として自動で判別されていることがわかります。フロースタイルでの記法これまでのインデントの深さによって記述する方法はブロックスタイルと呼ばれます。それに対して、なじみのある{}や[]の記号でデータを記述するる方法はフロースタイルと呼ばれます。"C"=>"orange"}このように、Rubyでおなじみの記法でYAML形式でデータを扱うことができます。YAMLの成形RubyでYAML形式のファイルを読み込むときは、load()メソッドを使うこともできます。load()メソッドの引数にはファイルオブジェクトを指定します。引数にはYAML形式の文字列を指定することもできます。以下のファイル(sample.yml)を読み込むとして説明します。パースするコードです。"Grape"]}YAML形式のデータがハッシュオブジェクトに変換されて表示されます。ハッシュオブジェクトを変更して、それをsample.yamlに書き込むなどして成形することができます。まとめこの記事では、YAMLの使い方を解説しました。基本的なYAMLの使い方をご理解していただけたかと思います。プログラミングにおいてデータとロジックを分離させるのは基礎的なことでもありますので、YAMLファイルを上手く活用してデータを外に出すようにしましょう。YAMLの使い方について忘れてしまったら、この記事を確認してくださいね!TweetPocket無料でSEからWebエンジニアへ転職しませんか?侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、システムエンジニアという職業だけどコードが書けない事務作業が多くスキルがないため将来が不安スクールに通うと完全未経験者と同じスタートになるからレベルが合わないという、すでに知識があるSEならではのお悩みがあることに気づきました。弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。こちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。長瀬来Unityを使ったiOSアプリのリリース、フリマサイト運営の経験があります。経験した言語はC、C#、Javascript、R、Python、Ruby、PHPなど言語が好きで、英語や中国、ドイツ語を勉強しました。将来的には海外で生活したいです。Rails5やCocos2dxの勉強を主にしています。ライターとしてはできるだけ初心者にわかりやすい文章になるように心がけています。趣味は語学、読書です。