連載
» 2012年08月13日 18時41分 UPDATE

なぜ今、HTML5なのか――モバイルビジネスに与えるインパクトを読み解く:第3回 ネイティブアプリか、それともWebアプリか? ――アプリ開発者を悩ます問題

アプリ開発者の間で「ネイティブアプリか、Webアプリか」という議論が盛んになっている。今回は、両者の長所と短所を整理するとともに、Webアプリの弱点を克服するために使われている手法を見ていく。

[小林雅一(KDDI総研),ITmedia]

 昨今の不況下で、例外的に活況を呈しているのがスマートフォンやタブレットを中心とするモバイル産業だ。特にそれらモバイル端末のタッチパネルから、指で簡単に操作できる「アプリ」と呼ばれる軽快なソフトウエアに関心が集まっている。厳しい就職難の最中、このアプリ開発者への求人倍率は新卒、中途採用を問わず高水準を維持している。

 彼らアプリ開発者の間で最近、「ネイティブアプリか、それともWebアプリか?」という議論が盛んになっている。もちろん本来、それは二者択一で片づけられるような単純な話でない。が、それにしても両者の一長一短を子細に検討し、アプリの用途や利用環境によって使い分ける機運が高まっていることは間違いない。

ネイティブアプリとWebアプリの違い

 ここで両者の違いを簡単に説明しておこう。まずネイティブアプリとは、例えばiPhoneやAndroid携帯などのスマートフォン、あるいはiPadなどタブレット端末のローカル記憶装置にインストール(保存)されるアプリケーションプログラム(アプリ)のことをいう(従来のPC上で使われてきた「MS Office」などの各種ソフトは、一般に「デスクトップアプリ」などと呼ばれるが、これらもローカル記憶装置にインストールされるという点から見れば、「ネイティブアプリ」と呼んで差し支えなかろう)。

 一方、Webアプリとは、Webブラウザ上で使われる各種アプリのことを指す。最も身近な例としては、「Gmail」や「Google Docs」など、Googleが提供する一連のサービスが挙げられる。他にも、業務管理ツールの「Salesforce.com」やソーシャルゲームの「Zynga」など、ブラウザ上で使えるアプリは仕事から娯楽まで広範囲に渡る。これらは技術的には、従来の静的なホームページ(Webページ)が、もっと動的な「アプリ」という形に進化したものと見ることができる。この点をもって、単なるWebページではなく、敢えて「Webアプリ」と呼ぶようになったのだ。

 このWebアプリを制作するために使われる技術がHTML5である。厳密な意味でのHTML5とは、ホームページの文書構造を設計するためのマークアップ言語「HTML」のバージョン5のことを指す。しかし最近、何かと話題に上る、「いわゆるHTML5(広義のHTML5)」とは、このマークアップ言語HTML5にCSSやJavaScript関連技術なども加えた、最新鋭のウエブ技術群を指すことが多い(以下、本文でも特に断りのない時は、こちらを意味することとする)。

 HTML5はWeb技術の世界的な標準化団体W3C(World Wide Web Consortium)が現在、標準化(規格化)作業を進めており、2014年にはそれを完了させたいとしている。ただしウエブ業界の慣例として、標準化の完了を待たずに、すでに前倒しでHTML5の導入は始まっている。

Webアプリの長所と短所

 HTML5で制作されたWebアプリには一長一短があり、これがソフト開発者の間で「ネイティブか、Webアプリか」の論争を巻き起こす理由となっている。これについては、連載第1回「次世代Web標準「HTML5」は今、どこまで使えるレベルにあるのか?」の中で詳しく解説しているが、もう一度、簡単に整理しておこう。

■(ネイティブアプリに比べて)Webアプリの長所
  長所
1 Appleの「App Store」やGoogleの「Google Play」など、特定企業が管理するアプリマーケットをバイパスすることで、そこでの手数料を回避できる
2 アプリマーケットによる厳しい審査なしに、自由なタイミングでアプリを配信できる
3 ワンソースで、iOSやAndroidなど複数OS(プラットフォーム)に展開できる
4 HTML5は比較的、簡単なコンピュータ言語なので習得しやすく、それによってアプリ開発者のすそ野が広がる

■Webアプリの短所
  短所
1 ネイティブアプリに比べて動きが遅い
2 カメラやセンサーなど、モバイル端末に内蔵されている部品を操作することができない
3 Safari、Android付属ブラウザ、IE、Chrome、Firefoxなど、異なるブラウザの仕様が完全に統一されていないため、それぞれのブラウザでWebアプリの挙動が微妙に異なる
4 HTML5には「DRM(デジタル著作権管理、事実上のコピー防止技術)」が用意されていない

 以上の長所、短所を鑑みて、ソフト開発者の間ではアプリの種類や用途に応じて、ネイティブとWebを使い分ける傾向が生まれている。例えば各種アプリの中でも、電子書籍のように比較的、操作が単純で、それほどの動作スピードが要求されないものにはWebアプリ、逆に複雑な動きに伴う操作性と高速性が要求されるゲームなどでは、やはりまだネイティブアプリの方に分がある。

 Webアプリはまた、ソーシャルメディアとの連携という点でも優れている。例えばボイジャーが先頃リリースしたHTML5対応の電子書籍ビューワー「BinB」では、読者が気に入った個所をTwitterなどで引用できる。これを見た他のTwitterユーザーが引用個所をクリックすると、ブラウザからBinBのビューワーが自動的に立ち上がり、該当箇所を読むことができる。これはまさにWebアプリならではの長所であり、逆にネイティブアプリで同じことをやろうとすれば、他のユーザーもあらかじめ同じビューワーアプリを端末にインストールしておく必要がある。つまりWebアプリにしておけば、この分の手間が省けるということだ。

 このようにアプリの用途や使用環境に応じてネイティブとWebを使い分けるとともに、Webアプリの弱点を克服する様々な対策も試みられている。例えばBinBでは、サーバーからブラウザへと一時的にダウンロードした電子書籍の文字データを、画像データに変換してからディスプレイに表示している。若干、不自然な仕組みだが、この理由についてボイジャーの担当者は次のように語る。

 「(HTML5で制作されたWebアプリにはDRMが用意されていないので)出版社側では、(部分的にも全体的にも容易にコピーできる)テキストデータをそのまま載せてしまうことを、かなり問題視している。そこで我々の方で、一種のDRMとして、文字を抜き出せないように画像化することにした」(ボイジャー執行役員・開発部長の林純一氏)

 こうした特殊な対応に留まらず、一般的にWebアプリが抱える各種問題への対策として取られているのが、一旦HTML5で制作したWebアプリをネイティブアプリに変換してから、製品として提供することだ。これはHTML5をベースに、それをネイティブコードでラッピングするような仕組みになっており、ネイティブとWebのハイブリッド(混成)型と呼ばれる。そのような変換ツールには米Adobe Systemsの「PhoneGap」や米Appceleratorの「Titanium」などがあるが、これらが市場に出回るに連れ、アプリのハイブリッド化はソフト開発業界でよく採用される戦略となっている。

 しかし本来、Web用に開発されたプログラムをわざわざネイティブコードに変換するのは明らかに不自然で、しょせんは一時の弥縫(びぼう)策という印象をぬぐい切れない。ハイブリッド型は恐らく過渡期特有の現象であって、今後、長期的にはWebアプリ自体の改良や進化によって、現在、顕在化しているような問題は解決されていくとみられる。

連載第4回に続く)

小林雅一氏プロフィール

 KDDIリサーチフェロー。東京大学大学院理学系研究科を修了後、雑誌記者などを経てボストン大学に留学しマスコミ論を専攻(東大、ボストン大とも最終学歴は修士号取得)。ニューヨークで新聞社勤務後、慶應義塾大学メディア・コミュニケーション研究所などで教鞭をとったあと現職。著書は「神々の『Web3.0』」(光文社ペーパーバックス)、「モバイル・コンピューティング」(PHP研究所)、「Web進化 最終形『HTML5』が世界を変える」(朝日新書)、「日本企業復活へのHTML5戦略」(光文社)など。



Copyright© 2016 ITmedia, Inc. All Rights Reserved.