色々な言語でGoogle Protocol Buffers
Google謹製のバイナリシリアライズライブラリ「Google Protocol Buffers」を色々と調査中。
データ構造をC言語の構造体っぽい書式で書くと、それを元に色々な言語のシリアライズ/デシリアライズのプログラムコードを自動生成してくれるという素敵なライブラリです。
しかし、「色々な言語」と書きましたが、現状ではC++、Java、Pythonの3言語しか対応していません。
というわけで、それ以外の言語に対応させているプロジェクトをざっくり検索してみたのでメモっときます。
オリジナル(C++,Java,Python)
protobuf – Google Code
C言語(not C++)
protobuf-c – Google Code
Perl
protobuf-perl – Google Code
Ruby
ruby-protobuf – Google Code
JavaScript
protobuf-js – Google Code
ActionScript
protocol-buffers-actionscript – Google Code
Common Lisp
common-lisp-protobuf – Google Code
.NET Framework
protobuf-net – Google Code
Mercury
protobuf-mercury – Google Code
PHPが使いたいのでソースはPHPしか読んでませんが、parser/pb_parser.phpでシリアライズ用のコードを生成して、それを使うのに必要なライブラリがmessage以下に詰まってる感じですかね。

