Skip to content

SPA用JavaScriptライブラリ×5選

by : 2017/04/28

はじめに(SPAについて)

昨今注目の技術にSPAという技術があります。SPAとはSingle-Page-Applicationの頭文字です。SPAの利点は、ユーザがアプリケーションを使っている間、Webページ全体をリロードする必要がないためレスポンスが高速ということです。RIA(Rich Internet Application)に変わる技術として注目を集めています。

代表的なJavaScriptのライブラリにAngular.jsや、Backbone.jsなどがありますが、今回はSPA専用のJavaScriptライブラリとして以下の5つを紹介します。

  • Senna.js
  • pager.js
  • sonnyJS
  • RomanSPA
  • durandaljs

Senna.js

senna.jsのキャプチャ画面

Senna.jsの読み方はセナあるいはセンナです。こちらのサイトによると、F1レーサーではなく、下剤に使われる漢方薬の元の植物の名前からとられています。

Senna.jsは他と比べると外部ライブラリへの依存がなく、非常に軽量なSPA用JavaScriptライブラリとなります。仕組みとしては、XMLHttpRequestを介して、履歴APIページを更新せずにURLを更新することができます。公式サイトには3種類のサンプルが公開されています。

ライセンスはBSD Licenseです。

pager.js

pager.jsのキャプチャ画面

jQueryとKnockoutJSをもとにしたSPA専用JavaScriptライブラリーがpager.jsです。pager.jsを使うには、Node.jsGruntQUnitPhantomJSRequireJSが必要です(via Getting Started)。

そして、pager.jsはcssのフレームワークと合わせて使うこともできます。デモはこちらで確認できます。

ライセンスは、MIT Licenseです。

sonnyJS

sonnyJSのキャプチャ画面

sonnyJSはミニマルシングルページアプリケーションエンジン・HTMLプリプロセッサです。特徴としてはテンプレートのネストと継承、ダイナミック同期テンプレートルーティング、クロスウィンドウ通信などがあげられます。

デモページのリンクも切れており、GitHubの更新も止まっておりますが、SPA専用JavaScriptライブラリとして、まだまだ開発に活用することができます。

RomanSPA

RomanSPAは、ASP.NET MVCとJavascript SPAの良いところを合わせたフレームワークです。HttpContextBase拡張メソッドを使い、ビューとモデル・キャッシングをキャッシングする方法をRomanSPAでは用いてます。こちらも2年前から開発が止まってしまっていますが、使いどころはまだまだありそうです。

Durandal.js

durandaljsのキャプチャ画面

読み方はデュランダルです。jQuery、KnockoutをRequireJSを利用して開発されています。特徴は豊富な機能で、MVCモデルでもMVPモデルでもMVVMモデルでも対応できてしまいます。また、内部でRequire.jsを使用しているので、モジュラリティが高く、多様なライブラリを使用できます。

ライセンスは、MIT Licenseです。


今後Webアプリケーションの開発を行う上でSPAは無視できない要素になってきます。今回紹介したようなライブラリを使い、効率的な開発を行ってください。

From → Uncategorized

コメントは停止中です。

%d人のブロガーが「いいね」をつけました。