2012年12月6日木曜日

YAML入門

3年の羽毛田です.
今日は,学内企業説明会がありました.

今回,RubyでTwitterのクローラを書いてた際にトークンとかをYAMLデータとして,ほかのところに保持して,それを読み込んで使用しました.
Rubyを使って書いたのが初めてで,YAMLがなにかわかっていなかったので,ここでまとめつつ理解を深めようと思います.

YAMLとは

構造化されたデータを表現するためのフォーマットで,目的はXMLと似ています.
特徴として,XMLと比べて書きやすく,わかりやすいという点があります.
Rubyでは,Ruby 1.8から標準ライブラリに含まれています.他にもいろんな言語でライブラリを用いて使うことができるみたいです.
詳しい書き方とかは下のURLを参照してみてください.
http://jp.rubyist.net/magazine/?0009-YAML

例としてXMLより書きやすく,わかりやすいと書いているので,実際に比較してしてみます.

yaml
users:
  - name: haketa
    mail: haketa@example.com
  - name: watanabe
    mail: watanabe@example.com
  - name: nishizaki
    mail: nishizaki@example.com

xml

  
    haketa
    haketa@example.com
  
  
    watanabe
    watanabe@example.com
  
  
    nishizaki
    nishizaki@example.com
  

このようにxmlよりyamlのほうが簡潔に記述することができたと思います.
各種設定ファイルやログファイルなどの用途に向いているみたいです.

調べているとよくXMLと比較されていますが,まったく別ものと考えるのがよいみたいです.

おわりに

私は,今までXMLやJSONについては学んできましたが,今回はじめて,YAMLというものを扱ってみたことで,これからなにかプログラムを書く際に,どのデータ表現をつかってみたらいいのかを考える選択肢がひろがりました.どんどん新しい知識をつけ,その時に適材適所につかっていけるように努力していきたいです.

そういえば,googleのナレッジグラフが日本でも公開されました!
昨日は,タレントの名前とかスポーツ選手の名前で検索をかけると,横にいろんな情報でてきたのに,さっきためしてもなにもでてこなくなってしまった...

0 件のコメント:

コメントを投稿