「ネイティブアプリかWebアプリか」の争いはいい加減やめにしよう

Mozillaの開発者であり、Webの支持者であるジェームズ・ロングは、モバイルWebアプリはネイティブアプリに敵うことはないと主張する。ロングの挑発的な物言いはわざとかもしれないが、彼の言ってる事も一理ある。しかしながら同時に、こういった事はますます論争の種では無くなってもきている。Forres

ReadWrite Japan

2015年3月23日 21:00

Mozillaの開発者であり、Webの支持者であるジェームズ・ロングは、モバイルWebアプリはネイティブアプリに敵うことはないと主張する。ロングの挑発的な物言いはわざとかもしれないが、彼の言ってる事も一理ある。

しかしながら同時に、こういった事はますます論争の種では無くなってもきている。

Forresterは「クライアント・サーバー時代はネイティブが制したが、Webに取って代わられた。歴史は繰り返す」と主張する。そうなのかもしれない。

もしフェイスブックのReactJSが何かの兆しなのだとしたら、それはネイティブ及びWebの未来はハイブリッドにあるということなのかもしれない。実際、そういったことは今現在でも見受けられる。

Webは「遅すぎる」

Webアプリの問題とは、ロングが言うようにDOM(ドキュメント・オブジェクトモデル。ドキュメントやWebページ/アプリをどの様にプログラムがアクセスするかを定義するAPI)が遅すぎるということだ。そしてこれが今後早くなることは無い。「いや、そんなことはない」という意見について、彼は以下のように言う。

根拠がまるで無い。DOMが十分速くなる兆しなどどこにも見られないし、もしそうなることがあってもモバイルにおいては到底常識的な期間内に起こり得ないことだ。速度の大幅な改善につながる様なもっともらしい説明も目にしたことが無い。これはまるで数百万のポリゴンを使ったモデルのレンダリングを速くする為にループの最適化を行う様な話だ。そうでは無い、本当にやらなければならないことはモデルに使うポリゴンを減らすことだ

これは基本的にReact Nativeが行っていることであり、DOMを使っていない。

最近のブログの投稿によると、たとえばFlipboardはこの方向をとった。Flipboardが主張するところによれば、その理由は「DOMを使って60fpsのスクロールリストビューは作れないから」との事だ。おそらく本当だろう。

あるいはジョン・グルーバーが指摘しているように、「FlipboardはDOMやCSSを完全に排除し、アプリのフレームワークをほぼ全てHTML5のcanvas要素を使って作りあげている」との事だ。これはDOM/CSSに対する手厳しい批判とも取れる。

政治的論争とモバイルWeb

Flipboardやその他が述べている政治的主張について取り沙汰することがここでの目的ではない。肝心なのは目的を達成することだ。そして問題解決においてハイブリッドアプローチはいつの場合でも素晴らしい方法だと分かる。

現実に我々が「ネイティブアプリ」について話をする時、ほとんどのアプリが少なくとも幾らかのHTMLを含んでいるという意味で「ハイブリッドアプリ」について話をしているということでもある。別にそうするべきだからという理由からではなく、出来るアプリ開発者はその様なやり方をとるからだ。

Instagramを例にあげてみよう

InstagramはタイムラインにWebビューを使っており、またそうすべき理由について多く語ってはいない。Instagramの開発者は政治的な論争ではなく、素晴らしいアプリを作るのが目的なのだ。そして彼らにとってハイブリッドアプローチは一般的にこれを達成する手段となっている。

フェイスブックのCEO、マーク・ザッカーバーグはかつて堂々と(間違えてはいたが)HTML5はフェイスブックにとって最大のミスだったと述べた。フェイスブックの参加となったInstagramがこの点について見ぬふりをしたのは明らかだ。

どんな時でもハイブリッド

これら全てにおいてキーになる事とは、アプリがどう作られるべきかということに固執するのを止め、ただ良いアプリを作ることに集中するということだ。

つまりハイブリッドアプリの美徳を讃えるニック・ラボイは、どの様に開発をするかに注力する代わりに、何を開発するのかに焦点を定めることで、正解に近づいたと言える。

自分が作ったアプリは全てのネイティブやハイブリッドアプリは、大体良いレビュー結果を得ている。Google Playを見てみると、アプリがどの様に作られたかについてコメントしている物は一つもないことがわかるだろう。ハイブリッドアプリはネイティブに比べてパフォーマンスやデザインに劣るという考えの元、嫌がらせみたいなレビューを投稿する多くの人たちがいることを考えると、これは重要なポイントだ。彼らの主張は単純に間違えている。開発者やデザインが良くないのであれば、ネイティブであろうがハイブリッドであろうが関係なくそのアプリは問題を抱えることになる

彼がWebテクノロジは習得が容易であり、ハイブリッドアプリは時間的にもコスト的にも効率が良く(ここで大事なのは開発にかかっている純粋なコストという点だ)、ハイパフォーマンスなハイブリッドアプリを提供することは可能であるといっているのは正しい事だ。

ユーザーだってこのことを気にはしない。

アプリ開発者にとって重要なことは、最高のアプリを最短の時間で仕上げることだ。そしてハイブリッドはほとんど全ての場合でこれに適している。

今日においてこのことは、アプリのネイティブでない部分はWebビューを使い倒すことを意味する。しかしReactJSの場合、意味合いが少し変わってくる。

VisionMobileが最近のレポートで述べた事によると

フェイスブックが最近公表したReact Nativeは、インターフェイスがほとんどJavaScriptで書かれたWebアプリのような物でもネイティブのパフォーマンスが達成できるという未来図を垣間見ることが出来る物だ

React Nativeが一般的になれば、アプリの機能の全てをWebで実現できるようになるかもしれない。良いことだ。

しかしそのようなアプリが出来たとしても、それはやはりハイブリッドアプリであることは変わらないのだ。これはモダンなアプリ(たとえそれをネイティブと呼ぼうとも)の作られ方だ。React NativeはモバイルWebでのアプリの作り方を変えるかもしれないが、それでもアプリがほぼハイブリッドであるということ自体は変わらない。

この事は主に開発者のマーケティングの問題だが、それは別に構わない。

トップ画像提供:Shutterstock

Matt Asay
[原文]

※本記事はReadWrite Japanからの転載です。転載元はこちらをご覧ください。

この記事のキーワード :

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30