これからは、コレ!旬なIT技術やこれから主流となりつつあるIT技術に関する情報をご紹介します。

2017年09月01日

Webアプリなのにサクサク快適!
~シングルページアプリケーション~

シングルページアプリケーションとは

シングルページアプリケーション(Single Page Application:SPA)は、画面の必要な部分だけを書き換えることで、Webアプリケーションであっても、ネイティブアプリケーション(※1)のようにスムーズに使用できるアプリケーションです。

※1 ネイティブアプリケーション:PCやスマートフォンにインストールして使うアプリケーション

従来のWebアプリケーションでは、ボタンをクリックしたときなどに画面全体がリロード(再読み込み)されていましたが、SPAでは次の画面の表示に必要なデータのみを取得して画面を書き換えるので、快適かつ高速に動作します(図1参照)。

SPA
図1.シングルページアプリケーション

シングルページアプリケーションのメリット

SPAには次のようなメリットがあります。

●スムーズで快適な操作を実現できる
上で述べたように、画面の表示に必要なデータだけを取得するので、画面の切り替えがスムーズにできます。よって、従来のWebアプリのページ単位の動作の枠組みにとらわれず、より快適なユーザー体験を得られます。

●ネイティブアプリのような機能を実装できる
オフラインで動作する機能や、アプリを使用していないときの通知の受け取り(プッシュ通知)などの機能は、従来のWebアプリでは実現困難でした。SPAならこのようなネイティブアプリに近い機能を持つWebアプリを使用することができます。

●1つのアプリをさまざまなデバイス向けに提供できる
SPAはWebアプリの一種なので、ネイティブアプリのようにダウンロード・インストールしておく必要はなく、Webブラウザがあれば使用できます。このため、PC・モバイルを含めさまざまなデバイスで利用できるので、幅広くお客様にサービスが提供できます。加えて、複数のデバイス向けに別々にアプリを開発するよりコストを削減できます。

シングルページアプリケーションの今後

SPAは画面の切り替えがスムーズな反面、複数の画面用のプログラムを最初にダウンロードするので、初回表示までの時間は長くなる傾向があります。このため、1つのアプリにある程度の時間留まり、ユーザーの操作に応じて頻繁に画面を書き換えるタイプのアプリに向いています。

SPAに向いているアプリとして、次のようなものが挙げられます(図2参照)。

●書籍検索アプリ
図書館などで使用する書籍検索アプリのように、検索結果からある書籍の詳細情報を確認し、目的のものでなければ検索結果に戻ってから次の書籍の詳細情報を見るというような、複数の画面を頻繁に遷移するアプリ。

●データ分析アプリ
分析担当者がデータの分析条件を変更して結果を確認しては条件を変更する、という作業を繰り返すデータ分析アプリ。

●チャットアプリ
ユーザーからのチャット形式での問い合わせなど、双方の発言に応じて画面を書き換えていくチャットボット(※2)が回答するアプリ。

SPAアプリ
図2.SPAが向くアプリケーションの例

※2 チャットボット(2016年6月のコラム参照)
 https://www.kobelcosys.co.jp/column/itwords/20160601/

SPA自体は以前からあったものですが、近年のWebブラウザやスマートフォンの高速化、Web技術標準化の進展、高機能なオープンソースフレームワークの開発などにより、導入しやすくなってきています。
前述のデータ分析アプリのような、ユーザーが長い時間利用するアプリの開発をベンダーに依頼する際は、SPAを選択肢の一つとしてみてはいかがでしょうか。

2017年9月

ITの可能性が満載のメルマガを、お客様への想いと共にお届けします!

Kobelco Systems Letter を購読