現在使用しているテクノロジーとフレームワークを現在決定している新しいプロジェクトに取り組んでいます。アプリケーションは最終的にクロスプラットフォームになります。したがって、サーバー側では、REST Java Springで記述されたAPIを使用します。
現在、フロントエンドWebアプリケーションに使用するテクノロジを決定しています。
オプションは次のとおりです。
フロントエンドのJavaScriptフレームワークを使用します(おそらくember jsを使用します)。ページは純粋にJavaScriptでレンダリングされ、すべてのRESTリクエストは内部から送信されますエンバー
PHPサーバーフレームワーク(Laravel)を使用します。すべてのREST呼び出しはLaravel内から行われます。サーバーサイドページのレンダリング
私の質問:どのアプローチが最善ですか?なぜ?オプション2を実行する場合(laravelを使用して要求を行う)、Laravelを使用するのはやりすぎです)ビューを生成し、REST api's?(すべてのロジックはREST API)からのものです)を呼び出します。オプション1で問題になるのは、レンダリングが初期ロード時間に影響を与えるクライアント側で実行されるアプリケーションは、ローエンドのハードウェアを使用するユーザーによっても広く使用されます。
他の提案やより良いオプションがある場合は、お知らせください!
よくあることですが、状況によって異なります
純粋なJSフレームワーク
中間層があるということは
問題は、これらの問題のどれがあなたにとって重要で、どれが重要でないかです。ローエンドのハードウェアをサポートする必要がある場合は、JSフロントエンドフレームワークは使用しません。この方法でパフォーマンスを制御することは非常に難しく、実行できる最適化には非常に制限があります。
別の観点から [〜#〜] jdt [〜#〜] にポイントを追加したい。
理論的には、サーバーは1つですが、クライアントは多数あります。したがって、ビジネスロジックをサーバー側に配置した場合、すべてのクライアントでビジネスロジックをやり直す必要はありません。これがAPIの実際のポイントだからです。 Web、Android、iOSなどのAPIを使用しています。
ただし、一部の機能がクライアントごとに異なる場合は、クライアント側に配置します。