The Go Blog

サードパーティライブラリ: goprotobufとその先

Andrew Gerrand
2010年4月20日

3月24日、Rob Pikeはgoprotobufを発表しました。これは、Googleのデータ交換フォーマットであるProtocol Buffers(略してprotobufs)のGoバインディングです。この発表により、GoはC++、Java、Pythonに並び、公式のprotobuf実装を提供する言語となりました。これは、既存のシステムとGoで構築されたシステムとの相互運用性を可能にする上で重要な節目となります。

goprotobufプロジェクトは2つの部分で構成されています。一つは、コンパイル後にプロトコルバッファにアクセスして管理できるGoソースファイルを生成する「プロトコルコンパイラプラグイン」。もう一つは、プロトコルバッファのエンコード(マーシャリング)、デコード(アンマーシャリング)、およびアクセスをサポートするランタイムを実装するGoパッケージです。

goprotobufを使用するには、まずGoとprotobufの両方をインストールする必要があります。その後、goinstallで「proto」パッケージをインストールできます。

goinstall goprotobuf.googlecode.com/hg/proto

次にprotobufコンパイラプラグインをインストールします。

cd $GOROOT/src/pkg/goprotobuf.googlecode.com/hg/compiler
make install

詳細については、プロジェクトのREADMEファイルを参照してください。

これは、増え続けるサードパーティのGoプロジェクトの1つです。goprotobufの発表以来、X Goバインディングは標準ライブラリからx-go-bindingプロジェクトに分離され、Freetypeのポートであるfreetype-goの作業が開始されました。その他の人気のあるサードパーティプロジェクトには、軽量ウェブフレームワークのweb.goや、Go GTKバインディングのgtk-goがあります。

オープンソースコミュニティによる他の有用なパッケージの開発を奨励したいと考えています。何か取り組んでいることがあれば、秘密にせず、メーリングリストgolang-nutsを通じてお知らせください。

次の記事: JSON-RPC: インターフェースの物語
前の記事: Go: 2010年3月の新機能
ブログインデックス