どんなに慣れていても、データ形式の扱いで頭を抱える瞬間はある。XMLのタグの山に囲まれて思考停止するより、サクッと読めるJSONの快適さに気づいた瞬間があるはず。それは偶然ではなく、選ばれる理由がある。この記事は、JSONという選択の裏にある論理を、あなたの開発体験に重ねて解き明かしていく。
Contents
JSONとXMLの違いがわかりづらい理由
両者とも「データをやりとりするための箱」として語られることが多い。共通点が多く、見た目にも似ている。しかし設計思想がまったく違う。XMLは本の章立てのように厳密で、順序や意味付けを大事にする。JSONはメモ帳に箇条書きするように、わかることだけ整理しておく。はじめて扱う人には、どちらも「なんか複雑な記号で書かれた文章」に見えてしまう。
JSONが開発現場で選ばれる理由
読みやすさがすべての入り口
JSONは「目に優しい」。タグで囲む代わりに {}
と []
で囲むだけ。項目名と値のセットが「:」で並ぶだけ。朝のToDoリストのように、パッと見で構造がわかる。
{
"user": {
"name": "Taro",
"age": 29
}
}
一方、同じデータをXMLで書くとこうなる。
<user>
<name>Taro</name>
<age>29</age>
</user>
見た目は似ていても、タグが増えるぶん、読み解くコストが跳ね上がる。
コードとの親和性が高い
JavaScriptだけでなく、Python、Ruby、Goなど多くの言語がJSONを標準で扱える。データをそのまま変数として使える感覚がある。
const user = {
name: "Taro",
age: 29
}
このままAPIのレスポンスに使える。変換処理も不要。
GitHubの元CEO、Chris Wanstrathは「JSONはAPIの民主化を推し進めた」と述べている(TechCrunch, 2016年)。つまり、誰でも直感的に理解できるフォーマットが開発の敷居を下げた。
軽いデータは早く届く
XMLは冗長。開始タグと終了タグがあるから、テキスト量が2倍近くになる。JSONは余計な飾りがない分、ネットワーク負荷が低い。これはモバイルアプリにとって死活問題。
Google Cloudは、モバイルとクラウドのデータ転送にはJSONが適していると公式ブログで言及している(cloud.google.com/blog/)。
JSONが脳の構造に合っている理由
情報を処理する時、人間は木ではなく箱で考える。名前のついた箱を用意し、そこにデータを入れて整理する。JSONの「キーと値」の構造は、脳のメモ帳のようなもの。
たとえば、あなたがラーメン屋のレビューを書いているとする。
- 名前:「中華そば一徹」
- 星:4.5
- コメント:「スープがあっさりして最高」
この3つの情報をタグで書くより、名前と内容だけで整理したほうが、頭に入りやすい。
JSONとAPIの相性の良さ
REST APIの設計思想は「シンプルで直感的」。URLでリソースを指定し、GET/POSTで操作を指示するだけ。そこに返ってくるデータが重かったら台無しになる。
JSONの軽さ、わかりやすさ、言語間の相互運用性が、RESTと理想的に噛み合った。
JSONの特徴:
- 文字数が少ない
- ネストが簡単
- エラー処理がしやすい
- スキーマがなくても動く
これらすべてが「早く作って、早く動かす」というAPI開発の文化にマッチしていた。
XMLが使われ続ける場所
XMLは死んでいない。銀行、行政、保険、製造業ではいまだ現役。理由は「ルールが厳しい世界だから」。スキーマ定義、名前空間、検証の仕組みが求められる場所では、XMLの堅牢さが武器になる。
つまり、JSONは自由な開発者の武器。XMLは厳格な世界の守護者。
まとめ
JSONは、読みやすく、書きやすく、動かしやすい。コードに近い構造が、エンジニアの思考を加速させる。APIというデータの高速道路に最適なフォーマットとして、自然と選ばれる存在になった。
構文を見れば理由がわかる。体験すれば納得する。開発者が直感的に選ぶのは、構造がシンプルだからではなく、自分の「頭に近い形」だから。
そこにあるのは、速さと軽さと自由。そして、作り手の気持ちに近いデータの姿。JSONが選ばれるのは、合理性ではなく、感覚にフィットするから。