Protocol Buffersについてちょっと思ったこと

最近Protocol Buffersでちょっと遊んでるわけですが、はてぶ見てるとなんかXMLと比較したようなコメントやエントリがそこら中にある。あれ、元ネタなんなんだろう?Protocol Buffersって全然XMLと比較するようなものじゃないと思うんだけど。

XMLと比べてサイズがごっつ小さいらしい!とか言われても、そりゃProtocol Buffersはバイナリフォーマットだしタグなんて文字列じゃなくてただの数値だし、そんなの比較してどうするんだよ、と思ったり思わなかったり。

XMLはなんだか喧伝されすぎて本来それに向いてないところでも使われてるから、そういう意味でProtocol BuffersがXMLの領域に食い込んでくことはあるだろうけど、基本的に二つは目的が全然違う。

人間とマシンの両方が中身を見れた方がいいとか、サイズの制限がさほどないとか、事前にメタデータを交換しておくのが難しければXML使えばいいだろうし、事前にIDLを交換できて、マシン対マシンでがんがん情報をやり取りしたいならProtocol Buffers。

Googleが社内で広く使ってるってところがProtocol Buffersの大きな売りであって、それ以外はそんな何かがずば抜けて優れてる規格でもないと思うので、あんまみんなが気にするようなものでもないんじゃないかなと思った。