231

メリット・デメリットを知りたい

  • Google プロトコル バッファ
  • JSON
  • XML

2 つのアプリケーションに 1 つの共通フレームワークを実装したいと考えています。1 つは Perl で、もう 1 つは Java です。そのため、Perl と Java の両方のテクノロジーで使用できる共通のサービスを作成したいと考えています。

どちらも Web アプリケーションです。

これに関するあなたの貴重な考えと提案を教えてください。私はグーグルで多くのリンクを見てきましたが、すべて意見が分かれています。

4

1 に答える 1

290

ジェイソン

  • 人間が読める/編集可能
  • 事前にスキーマを知らなくても解析可能
  • 優れたブラウザ サポート
  • XML より冗長でない

XML

  • 人間が読める/編集可能
  • 事前にスキーマを知らなくても解析可能
  • SOAPなどの標準
  • 優れたツール サポート (xsd、xslt、sax、dom など)
  • かなり冗長

プロトブフ

  • 非常に密なデータ (小さな出力)
  • スキーマを知らずに堅牢にデコードするのは難しい (データ形式は内部的にあいまいであり、スキーマを明確にする必要があります)
  • 非常に高速な処理
  • 人間の目用ではありません (密なバイナリ)

すべてがほとんどのプラットフォームで適切にサポートされています。

個人的には、最近ではほとんど XML を使用しません。コンシューマーがブラウザーまたはパブリック API である場合、私は json を使用する傾向があります。内部 API では、パフォーマンスのために protobuf を使用する傾向があります。パブリック API で両方を (ヘッダーまたは別のエンドポイント経由で) 提供することもうまく機能します。

于 2012-12-25T08:37:27.417 に答える