現在、Webアプリケーションを構築する方法は複数あります。
1.サーバー側のみ
これは、Ruby on Rails、Django、Express、PlayなどのWebフレームワークによってサーバー上のページをレンダリングする古典的なアプローチです。フレームワークなど
典型的なワークフロー:選択したフレームワークでサーバー上にすべてのビジネスロジック、モデル、およびビューテンプレートを構築します。
2.クライアント側+ REST API
比較的前に、Webコミュニティ全体が、Angular、Backbone、Ember、およびその他の数十のJavaScript MV *フレームワークでクライアント側アプリケーションの構築を開始しました。そして今、React.jsもパーティーに参加しています。
更新:誤解はありません。クライアント側のみが意味することは、懸念事項を完全に分離することです。REST APIサーバーと、そのサーバーと通信するクライアント側アプリケーションがあります。ユースケースにもよりますが、認証またはデータ永続化のためにバックエンドに接続しない真のクライアント側のみのアプリケーションは決してないでしょう。
典型的なワークフロー:Angular vs Backbone vs Ember vs Xを決める時間を費やします。次に、クライアントでルート、モデル、ビュー、コントローラーを構築します。完了したら、サーバー上でモデル、コントローラー、ルートを構築します。ある意味では、2倍の量の仕事をしています。
3.ハイブリッド
このアプローチの使用についてはあまり知りませんが、推測する場合は、サーバーでビュー(MVCフレームワークのビュー)をレンダリングします。その結果、SEOサポートに加えて、ページの読み込みが高速化されます。
上のハイブリッドフロントairbnbのありrendrおそらくバックボーンを組み合わせて、一緒に表現しています。
Eric Florenzoが今日彼のブログに投稿しました:React:最後に、素晴らしいサーバー/クライアントWebスタック。
Webアプリケーションを構築する方法の量は圧倒的です。そして、ウェブ開発を学んでいる人にとって、これは問題になる可能性があります。次のアプリケーションを構築するために、どのアプローチを使用するかをどのように決定しますか?