JavaScriptフレームワーク
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/09/05 02:07 UTC 版)
「シングルページアプリケーション」の記事における「JavaScriptフレームワーク」の解説
AngularJS、Ember.js、Meteor.js、Vue.js、ReactなどのJavaScriptフレームワークはSPAの原則を採用している。 AngularJSは、完全なクライアントサイドのフレームワークである。双方向データバインディングに基づくテンプレートを採用している(データバインディングとは、モデルが変化したら自動的にビューも変化させ、ビューが変化したらモデルも変化させる仕組みをいう)。HTMLテンプレートはブラウザによってコンパイルされ、生成されたHTMLがビューとしてレンダリングされる。従来のサーバサイドプログラミングではコントローラやモデルといった概念はサーバ側で作用していたが、AngularJSではそれらをクライアント側で持つため、サーバと通信することなくページを生成することが可能である。 Ember.jsは、MVCアーキテクチャに基づくクライアントサイドのフレームワークである。リッチオブジェクトモデル、宣言型の双方向データバインディング、Computed Properties、Handlebars.jsを使用した自動更新型テンプレート、状態管理可能なルーティングなど、多くのベストプラクティスを採用しており、スケーラブルなSPAの開発が可能である。 Meteor.jsは、SPAに特化して設計されたフルスタックの(クライアント・サーバ型)フレームワークである。AngularJSやEmber.js、Reactよりも単純なデータバインディングを採用している。出版-購読型モデルを採用しており、開発者が同期用のプログラムを書くことなく、データの変更をリアルタイムにクライアントに通知できる。フルスタックかつリアクティブであるため、データベースからテンプレートまでの全レイヤーが必要なときに自動的に更新される。 Aurelia は、AngularJSに似たクライアントサイドのフレームワークである。AngularJSよりも新しく、より標準に準拠し、モジュール方式を取り入れている。Aureliaは次世代のECMAScriptによって書かれている。 Vue.jsは、ユーザインタフェースを構築するためのプログレッシブフレームワークである。vue-cliやwebpackによって容易にSPAを開発できる。
※この「JavaScriptフレームワーク」の解説は、「シングルページアプリケーション」の解説の一部です。
「JavaScriptフレームワーク」を含む「シングルページアプリケーション」の記事については、「シングルページアプリケーション」の概要を参照ください。
- JavaScriptフレームワークのページへのリンク