2017-06-19 6 views
-2

私たちはサーバからクライアントに渡す必要がある2つのタイプのリストを持っています.1つは人気のある都市のリストです。人気のない都市のリストです。JSON:応答で2つのJSONオブジェクトを返す対違を識別するフラグを持つ単一のJSONオブジェクトを渡す

我々が持っている最初のオプションは以下のように人気があり、非人気のある都市で個別に異なるバックJSONオブジェクトを送信することです:

{ 
    "Cities": { 
     "PopularCities": [ 
      {"id":1, "name":"PopularCity1"}, 
      {"id":2, "name":"PopularCity2"} 
     ], 
     "NonPopularCities": [ 
      {"id":3, "name":"NonPopularCity1"}, 
      {"id":4, "name":"NonPopularCity2"} 
     ] 
    } 
} 

OR

が同じJSON内のすべての都市をフェッチし、人気を区別するためにフラグを使用し、非一般的な例:

{ 
    "Cities": { 
      {"id":1, "name":"PopularCity1", "isPopular": true}, 
      {"id":2, "name":"PopularCity2", "isPopular": true} 
      {"id":3, "name":"NonPopularCity3", "isPopular": false}, 
      {"id":4, "name":"NonPopularCity4", "isPopular": false} 
    } 
} 

どちらが良い方法ですか?

答えて

0

両方のアプローチを使用する前に評価する必要があるため、質問はかなり曖昧です。デザインパターンを見てみると、キーは必要に応じてメタデータと値の名前になると予想されます。第二のアプローチは、再び良いアイデアのように思われませんフィルタリングの各時間を計算しますフラグ変数を使用するように思えるように、アプローチ1は

{"Cities": [{ 
    "type":"Popular Cities", 
    "cityList" :[ 
     {"id":1, "name":"PopularCity1"}, 
     {"id":2, "name":"PopularCity2"} 
    ]}, 
    {"type":"Some Other Cities", 
    "cityList" :[ 
     {"id":1, "name":"SomePopularCity1"}, 
     {"id":2, "name":"SomePopularCity2"} 
    ]}, 
    {"type":"Non Popular Cities", 
    "cityList" :[ 
     {"id":1, "name":"NonPopularCity1"}, 
     {"id":2, "name":"NonPopularCity2"} 
    ]} 
]} 

どこのように見えるものとします。

関連する問題