世界中で急速にスマートフォンの普及が進む中、エンジニアに対してもスマートフォンで動作するアプリケーションを開発することが求められる局面がどんどん増加している。スマートフォンで動くアプリケーションを作成する際に最初の分岐点となるのが、HTML5を駆使したWEBアプリケーションとして作成するか、端末上で直接動作するネイティブアプリケーションとして作成するかということだ。

2013年5月22日に開催したTech Compassでは、大前広樹(@pigeon6)氏、白石俊平(@Shumpei)氏、増井雄一郎(@masuidrive)氏の3名をプレゼンターとして招き、各々自己紹介を兼ねたプレゼンの後、ディスカッション形式で意見を戦わせて頂いた。

Tech Compassはマイナビが主催するイベントだ。自己啓発や人的交流の促進を通してエンジニアをサポートすることを目的としており、今回は3度目の開催となる。大方の予想通り、WEBアプリ、ネイティブアプリ、ともに双方譲らず、議論は最後の最後まで白熱した。本稿ではその内容について、詳しく紹介する。

Tech Compass 過去の開催レポート

Tech Compassの過去の開催レポートを以下に掲載しております。併せてご覧ください。

「ユーザがアプリを使ってどんな体験ができるかが重要」

ユニティ・テクノロジーズ・ジャパン合同会社 大前広樹氏

最初にプレゼンを行ったのは、国内でUnityの普及に努めている大前氏だ。

Unityとは、PCを始めとしてゲーム機やモバイル機器など、様々な実行環境をサポートするゲームの開発環境であり、世界に180万人以上のユーザを持つ。今回のディスカッションでは大前氏にはネイティブアプリを勧める立場で参加して頂いた。

売るためのモバイルアプリを作るのに大切なこととして大前氏は、開発環境が優れていることや、ユーザがアプリを使った上でよい体験ができることなどを挙げた。「WEBアプリであるかネイティブアプリであるかは関係がなく、比較をしても仕方がない」(大前氏)というのが大前氏の立場だ。

最終的にはモバイルのデバイスが持つリソースが制約となりうることに触れ、WEBアプリよりも多くのリソースを利用することができるネイティブアプリに分があると締めくくった。

「HTML5は進化し続ける」

オープンウェブ・テクノロジー 白石俊平氏

次はhtml5j.org の管理者を勤める白石氏のプレゼンだ。

白石氏は、html5j.orgの他にも「」や「(白石俊平と)カッコいいやつら」と言ったイベントを主催するなど、精力的に活動を行っている。当然、今回はHTML5をベースとしたWEBアプリを勧める立場として登壇して頂く。

先に登壇した大前氏のプレゼンについて、白石氏は、確かにWEBアプリにはネイティブアプリにかなわない点があると、ネイティブアプリの優位性を認めた。具体的には、デバイスの機能を使いきれない、実行速度が非常に遅い、アプリストアが不在である、という3点が挙げられる。

しかし、「HTML5を主導する人々はこれらの問題に気がついており、どんどん改善を進めている」(白石氏)という。W3Cでは様々な新機能が提案され、ネイティブデバイスに負けないくらいのAPIの実装が日々続いている。asm.js、NaCl、Dartなど、JavaScriptの速度の限界を突破するためのプロダクトもどんどん産まれている。アプリ配布の導線については様々なプロバイダが興味を持っている上、ネイティブアプリにはないURLという概念が、Twitterを始めとするSNSと非常に相性がいい。

「ネイティブのAPIを知らずに開発環境を使いこなすのは難しい」

FrogApps 増井雄一郎氏

最後に登壇したのは、スマフォ向けのフード系ソーシャルアプリ「ミイル」の開発者である増井氏だ。

増井氏は「プログラミングの息抜きにプログラミングをするほどプログラミングが好き」という根っからのプログラマーである。iOSとAndroidの双方で動作するアプリケーションを作るためのTitanium SDKの開発に携わっていた経緯もあり、今回はWEBアプリとネイティブアプリの双方をハイブリッドに使うという立場で議論に参加して頂いた。

増井氏が開発しているミイルはネイティブアプリとして開発されたが、その一部をHTML5に移行したという。その経験から言えるのは、HTML5のキャンバスは安定しており、速度も思っていたよりずっと速いということ。また、Titaniumのようにツールキットで違いを隠蔽するアプローチについては、用途を絞って使う分には有効だが、ネイティブのAPIを知らずに使いこなすことは難しいと、ツールキットによるハイブリッドな開発にも限界があることを伺わせた。