web-dev-qa-db-ja.com

ビジネスオブジェクトごとに1つのリソースですか、それとも多くの目的のための多くのリソースですか?

私はJavaScriptUIクライアントを開発していますが、バックエンド開発者は、後で変換する必要のない形式でデータを渡すことを拒否しています。それで、私は現在、後で問題につながるだけの多くの知識を含むマッパーに取り組んでいます。さらに、私たちが受け取るオブジェクトは非常に深い場合があり、多くの場合、不必要に深くなります。

私のビューでは、リソースは、ビューにすぐに表示できるオブジェクトを私に渡す必要があります。リソースを使用しているのは私だけではないため、これには制限があることを理解しています。ただし、理想的なシナリオでは、サーバーがどのマシンになるかを認識して制御するため、サーバーはクライアントから可能な限り多くの作業を軽減する必要があると思います。反対側のクライアントは他の誰かのコンピューターであり、そのマシンがどれだけ停止できるかはわかりません。だから、そのような場合の最善の戦略は何であるか疑問に思います。私はこの分野の経験がほとんどないので、別の見方をするかもしれない外部からの意見を聞きたいと思います。

  • API設計についてどのように交渉していますか?
  • APIがどのように設計されているか、つまりフロントエンド/バックエンドでどのくらいのマッピングを行うかについての傾向はありますか?
  • また、サーバーが有用な方法でデータを渡さない場合、結局のところサーバーの必要性は何ですか? (私は意図的に誇張しています。)
  • そのようなデータ変換を処理するのに役立つパターンはありますか?
1
Gerome Bochmann

あなたのウェブサイトをホストしているサーバーにサーバーサイドコードを追加します。

このサーバーサイドコードでクライアントリクエストを受け入れ、1つまたは複数のAPIを呼び出し、モデルを変換してビューモデルに結合し、クライアントに返します。

これにより、独自のビューモデルを挿入し、キャッシュを実行し、クライアントに単一のエンドポイントを提供して、セキュリティを簡素化できます。

あなたが言うように、あなた自身のビューモデルを持つことはあなたがクライアント側のコードを短く単純に保つことを可能にするでしょう。プレゼンテーションロジックに限定され、応答性のために最適化されています。

2
Ewan