好き勝手に・げーあにん?

ファミコンと同い年の社会人ヌルオタの日記

Google Protocol Buffers をインストールしてみたメモ

ただ readme に従ってただけで特に困ることなく使えてしまったので大して書くことがない罠。

Cygwinでやろうと思ったら、Cygwin版の Python だと駄目らしい?*1ので素直にWindowsで。って、別に gcc(Cygwin) と Python(win32)でも良かったか。まぁ、いいや。

JavaMaven 入れるのがめんどくさかったので触ってない。思わずスルーしそうになるけど、WindowsでもLinuxでも動いて、私のような英語力の乏しい*2ヌルプログラマでもアッサリ使えてしまうっていうのは、実はすっごいことだと思うんだ。

Pythonでのインストール手順での

$ python setup.py test

のとこで FAILED になる。既出っぽい。

‥‥気にしなくていいことにした(ちゃんと読め)。

protobuf-2.0.0beta/examples を特にいじらず、 一番シンプルっぽい形を Python で書いて、list_people_cpp.exe で確認できたところまではやった。

可変長の配列を含むバイトデータがシンプルに実装できるのはかなり嬉しいよなー。

あんまりちゃんと調べてないけど、エンディアンは使う側は特に気にしなくていいっぽい。int32 とかはそのまんまのバイト列での出力はされてない。0 と 0x12345678 を出力したときだとバイトサイズ変わってる。C++エンディアンの事を気にしなくていいだけでも結構うれしいな。

文字列はShift-JISだろうが、UTF-8だろうが、そのまま出力されてるけど、 UTF-8 を使っといたほうが良さげ? まぁ、メインの用途で使いやすいものに合わせてしまっていいような気はするけど。

Language Guide と 各種 Generated Code の翻訳版が欲しい‥‥。


とにかく、C++ で扱えるデータ形式としては抜群に使い勝手がいいんじゃないだろうか。これだけのためにちゃんと Python を勉強しようと思い始めた。JRuby 使うっていうのもあり?

*1:protobuf-2.0.0beta/python/README.txt 参照

*2:日本語力もプログラミング力も乏しいですがorz