7

私が取り組んでいるアプリケーションは、主にサーバーから取得した JSON データの操作に基づいています。従来の JSON パーサーは、値を抽出し、必要な POJO を設定し、UI ハンドラーに渡してレンダリングします。この部分は今のところうまくいっています。

GSON ライブラリについて聞いたことがあり、その実装手順を実行しました。私の理解によると、それ(GSONの使用)には以下が必要です。

  1. 適切な構文の JSON データ。
  2. JSON 応答に一致するモデル クラス オブジェクト。
  3. サーバーから JSON をフェッチし、GSON にフィードするための GSON インジェクターまたはコード スニペット。

上記のアプローチは、オブジェクト マッピングのように聞こえます。ただし、昔ながらの JSON 解析と比較して、GSON がどれほど効率的であるかはわかりません。特に複雑な JSON の場合。そして、メモリ使用量への影響は?

どう思いますか?

4

2 に答える 2

9

GSON は、現在 Google Play にあるいくつかの Android アプリで正常に使用されています。GSON で得られる利点は、オブジェクト マッピングによってコードの記述に費やす時間を節約できることです。メモリ使用量への影響については、ストリーミング JSONReader を使用する fromJson() メソッド呼び出しを使用して、メモリに保持される文字列データを最小限に抑えることができますが、JSONReader を自分で使用して json データを解析しようとすると失敗します。

于 2013-03-11T17:23:49.777 に答える
2

GSON の目標は、公式ページで詳しく説明されています。

Gson の目標:

  • シンプルな toJson() および fromJson() メソッドを提供して、Java オブジェクトを JSON に、またはその逆に変換します
  • 既存の変更不可能なオブジェクトを JSON との間で変換できるようにする
  • Java Generics の広範なサポート
  • オブジェクトのカスタム表現を許可
  • 任意の複雑なオブジェクトをサポート (深い継承階層とジェネリック型の広範な使用)

https://code.google.com/p/google-gson/

于 2013-03-11T17:21:13.007 に答える