2016/04/09

はじめてのJSON

お客様「データはJSON形式でお願いします」
私「わ、わかりました(あれよね?)」

image

さあ、みんなもJSONを勉強しよう!


JSON

json.org、とあるから、ここが大元なのか。
ECMAになっているらしい。
私のイメージでは、ECMAはヨーロッパ版のISOだかIECだとか、そういう感じなのだけど、たぶん違うだろう。
ともかく、規格関係だ。

 

JavaScript Object Notationの略。
最初はJavaScript用だったけど、意外といいやん、ということで抜き出したのかな。
簡単にパースできると書いてあるけど、それだったらタグはバイナリ値の方が作りやすいな。
まあ、そういう愚痴を言っても仕方ないので、中身を見よう。

 

  • データは、objectかarrayで定義される。
    • object
      • {
        • string、コロン、value、
        • ↑が複数あるなら、コンマでつなげる
      • }
    • array
      • [
        • value
        • ↑が複数あるなら、コンマでつなげる
      • ]

ふむ、シンプルだ。
あとは、valueはこうだ、とか、stringはこうだ、とか、そういう定義が書いてある。

stringは、ダブルクオーテーションで囲むようになっている。
だから、それ以外のところにスペース文字を書いてもよい。

 

基本はvalueで、stringもobjectもvalueの1種だ。
valueが基本だけど、内容としての基本はobjectだろう。
あ、いや、arrayだけ、というのも可能なのか。
でも、arrayだけ渡されても何だかわからない・・・いや、そういう取り決めもありか。

 

あまり制約がないので、方針がいろいろあるようだ。
JSONにせよ、NFCのパケットにせよ、BLEのパケットにせよ、DICOMにせよ、まあやりたいことはだいたい同じなので、Type/Tag, Length, Valueが表せれば事足りる。
あとは、その表現方法だ。
JSONは表現が全部テキストで表せるようになっている、というのが特徴だろう。
「もう全部バイナリでやろうぜ」というのは、過去の時代になったのか・・・。

 

とりあえず今回検索してわかったのは、「ジェイソンはチェーンソーを使っていない」ということだった。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。