現在のプロジェクトでは、いくつかのWebサービスからデータをプルし、バックエンドAPIを介してデータベースからデータをプルし、すべてのリソースに同じデータがあるかどうかをチェックする画面があります。
他のウェブサービスはデータベース内のデータの部分的なミラーであり、画面にはデータの状態を示すテーブルが表示されます(サーバー全体ですべてが同じ場合)
以前は、画面は完全にクライアント側のjavascript(残りのすべての呼び出し、すべての比較ロジック)で表示され、後でその大部分をJavaバックエンドに移動し、現在の状態でjsonを公開しています)そしてクライアント側はそれをテーブルビューに変換します
しかし、私はこれに非常に満足していません。
JSプロ:
JSの短所:
Javaバックエンドプロ:
Javaの短所:
正しいアプローチは何ですか?クライアントまたはサーバー?
私は好きです David Packer's answer あなたの他の質問について。しかし、もう少し蒸留するには:
ラウンドトリップを減らすためのフロントエンドのビジネスロジック。
しかし、すべてのビジネスロジックはバックエンドにあります(つまり、ビジネスロジックが複製されます)
また、言語に実装するのがどれほど難しいかを忘れてください。言語に依存しないアーキテクチャの決定を下している(実装の難しさが実際に懸念される場合は、別の言語を使用することもできます)。