アプリには大きく分けてWEBアプリとネイティブアプリの2つがあります。この2つは開発方法、ユーザーの使用方法などに違いがあり、一長一短です。では具体的に何が違うのか、どちらを選択すべきか、などについて解説します。
WEBアプリとは
WEBアプリとは、WEBブラウザ上で動くアプリのことです。WEBブラウザとは、WEBサイトを見るときに使うソフトです。具体的には「Google Chrome」「Internet Explorer(IE)」「Microsoft Edge」「Safari」「Firefox」「Opera」などが挙げられ、WEBブラウザということを特に意識していなくても使っているはずです。
たとえばネットサーフィンする場合、WEBブラウザを通してインターネットにアクセスし、いろいろな情報を閲覧しています。このようにWEBブラウザを使用する際にはだいたいインターネットにアクセスしているので、WEBアプリはオンライン環境で使用することを想定しています。
一部のWEBアプリはオフライン環境でも使用可能ですが、オフラインであってもWEBブラウザを通して使用するようになっています。
ネイティブアプリとは
ネイティブアプリは、端末にインストールして使用するアプリのことです。パソコン用、スマホ用のネイティブアプリがあります。スマホ用の場合はiOS用とAndroid用に分かれていて、それぞれApp StoreとGoogle Playでダウンロードします。
他の配布方法もあるのですが、これらのストアでダウンロードしてインストールすることが大半です。端末の中に入れたアプリを使用することになるので、使い方がWEBアプリとは大きく異なります。
WEBアプリのメリット・デメリット
WEBアプリのメリット・デメリットをそれぞれご紹介します。
WEBアプリのメリット
WEBアプリのメリットは以下が挙げられます。
・インストールの手間がかからない
・端末の制限を受けない
・審査がない
インストールの手間がかからない
まずWEBアプリはインストールが不要です。WEBブラウザを介して使用するアプリなので、サーバー上にあるWEBアプリにアクセスして使うことができるからです。端末にインストールせずに使用できるので、ユーザーにとっては使用のハードルが低いと言えるでしょう。
たまに使用するけれどインストールするほどではない、といった場合に使ってもらえます。
端末の制限を受けない
次にWEBアプリは端末の制限を受けません。ネイティブアプリの場合は端末にインストールするので、当然端末のOSによってアプリのコードが変わってきます。
具体的にはiOS、Android、Windows、MacOSなどそれぞれ違う形でアプリを開発する必要があるのです。これに対してWEBアプリは端末のOSの影響を受けません。パソコンかスマホかによって表示画面の大きさなどは変わりますが、レスポンシブ設計にしておけば表示を変えることは難しくないので、どの端末からでも使用できます。
審査がない
そしてリリース時の審査がありません。ネイティブアプリの場合はiOSならApp Store、AndroidならGoogle Playの審査を受けることになります。WEBアプリは公開するサーバーがあれば自由に公開できるので、審査を受ける手間やハードルがないというメリットがあります。
WEBアプリのデメリット
一方で、WEBアプリにもデメリットがあります。具体的にWEBアプリのデメリットは以下が挙げられます。
・動作が遅い
・デバイスの機能を使えない
・ユーザーの目に届かない可能性が高い
動作が遅い
まずWEBアプリは毎回ユーザーがWEBブラウザ経由でインターネットからサーバーにアクセスして使用します。そのため、どうしてもネイティブアプリに比べると動作が遅くなります。
特にアクセスが集中した場合や、オンライン環境に問題があると劇的に遅くなります。ネイティブアプリも一部の機能はオンラインになっている場合もありますが、WEBアプリのようにすべてがオンラインなわけではありません。そのためWEBアプリとネイティブアプリで動作スピードに差が出ます。
デバイスの機能を使えない
次にWEBアプリはデバイスの機能を使うことができません。ユーザーの端末にインストールするわけではないからです。ネイティブアプリの場合は端末にインストールして端末の機能を使うことを想定できますが、WEBアプリの場合はむしろ端末による制限をなるべく排除することが前提になります。
ユーザーの目に届かない可能性が高い
そしてWEBアプリはネイティブアプリよりもユーザーの目に触れるのが難しい可能性があります。特にスマホのネイティブアプリはアプリマーケットが存在するので、リリースしておけばそこからユーザーの目に触れるチャンスがあります。
一方でWEBアプリにはそのような場は存在せず、ユーザーの目に触れる機会を自ら作る必要があります。公開したアプリをどのようにユーザーに使ってもらうのか考える必要があり、またそのハードルが高いです。
ネイティブアプリのメリット・デメリット
ネイティブアプリのメリット・デメリットをそれぞれ挙げていきます。
ネイティブアプリのメリット
ネイティブアプリのメリットは以下です。
・動作が速い
・デバイスの機能を使える
・アプリマーケットからユーザーの目に触れる
・感覚的に使いやすい
動作が速い
まずネイティブアプリは動作が速いです。これは端末にアプリをインストールして利用しているため、すべての機能でオンラインにアクセスする必要がないからです。ネイティブアプリでも一部の機能はオンライン仕様になっている場合があるので回線の状況などによっては速度が落ちますが、ローカル環境で使用できる部分については速度が高速です。
デバイスの機能を使える
次に、ネイティブアプリはデバイスの機能を利用できます。たとえば、カメラ、位置センサー、プッシュ通知などの機能を利用可能で、もともとの端末内の機能を利用することで、アプリ側で実装する手間が省けます。
そもそもWEBアプリだとネイティブアプリで使えるデバイスの機能を用意するのが困難ということもあります。
アプリマーケットからユーザーの目に触れる
ネイティブアプリはアプリマーケットに公開するので、ユーザーの目に触れる機会を作りやすいというメリットもあります。当然上位に表示されなければ利用してもらうのは難しいのですが、逆に言えば上位に表示できればユーザーの利用数は一気に伸びる傾向があります。
逆にWEBアプリはユーザーの目に触れるための導線を考えて試行錯誤する必要があるので、ユーザーの目に触れるハードルはネイティブアプリの方が低いと言えるでしょう。
感覚的に使いやすい
これはユーザー目線のメリットですが、ネイティブアプリはインストール後画面にアイコンで表示されるため感覚的に使いやすいです。WEBアプリはブックマークなどで使用する必要があり、感覚的に使えるネイティブアプリの方を好むユーザーは多いでしょう。
ネイティブアプリのデメリット
一方で、ネイティブアプリのデメリットは以下です。
・アプリストアの手数料がかかる
・アプリの公開に審査がある
アプリストアの手数料がかかる
アプリストアにアプリを公開した場合、アプリのリリース費用とアプリの購入費用を徴収されます。まずリリースする段階でiOSは99ドル、Androidは25ドルかかります。Androidは一度25ドル支払えばその後は維持のための手数料は取られませんが、iOSは毎年99ドル徴収されます。
そしてiOSもAndroidもアプリの購入、アプリ内の購入に対して30%の手数料が徴収されます。
出典:APP ANNIE
https://www.appannie.com/jp/academy/monetize/app-stores-charges-revenue-splits/
アプリの公開に審査がある
iOSのアプリはApp Storeにリリースする際に審査があります。Androidは審査がありません。iOSの場合は審査に落ちるとアプリを公開できないので、このハードルがあります。
ハイブリッドアプリとは
WEBアプリとネイティブアプリについて解説してきましたが、ハイブリッドアプリというものが存在します。ハイブリッドアプリとは、ユーザーから見た使い方はネイティブアプリで、実装方法はWEBアプリに近いというものです。
ユーザーはアプリストアからインストールしてハイブリッドアプリを使用しますが、アプリをタップして使用するとオンライン上のサーバーにアクセスし、WEBアプリのように機能するというイメージです。
開発者側はWEBアプリのように端末の差異をあまり考慮せずに実装することが可能で、App StoreとGoogle Playの両方に公開できます。ユーザーはあまりWEBアプリとネイティブアプリの違いは意識していないはずなので、効率的なアプリと言えます。
ただし、端末の機能を利用するというネイティブアプリのメリットを活かしにくい、すべての機能がサーバー上にあるので速度はWEBアプリと同等、といったデメリットはあります。
ネイティブアプリを選択すべき場合
ターゲットをスマホに設定した場合、WEBアプリよりもネイティブアプリの方に分があります。ネイティブアプリの方が端末に特化していてスマホユーザーにとって使いやすく、速度が速いからです。
スマホユーザーの多くはこのことを経験から知っているので、同じサービスでWEBアプリとネイティブアプリの両方がある場合、ネイティブアプリを利用するケースが多いでしょう。
またネイティブアプリはアイコンで表示される分感覚的に管理がしやすく、ネイティブアプリの方を好むユーザーも多いはずです。そのため、スマホをメインターゲットにするならネイティブアプリの方が有利です。
また現状は多くのサービスをパソコンよりもスマホから利用しているユーザーが多いので、結果的にネイティブアプリに分があります。パソコンがメインターゲットになるような一部のアプリ以外は、ネイティブアプリを選択した方がユーザーニーズが大きいと言えます。
iOS開発から始めるのがおすすめ
スマホをターゲットにしたネイティブアプリであれば、iOSから始めるのがおすすめです。理由は複数ありますが、特に重要なのはiOSのアプリ開発で使用するXcodeの使いやすさと、iOSの方がAndroidほど端末やバージョンの差が大きくないため端末側の意識が少なく済むということです。
スマホのネイティブアプリ開発初心者にとってはiOSの方が入り口として挫折せずに入りやすいので、iOSアプリの開発から始めるのがおすすめです。iOSとAndroidの両方に関心がある場合、iOSから入って次に同じ、もしくは類似のアプリをAndroidで実装してみるのが良いです。
まとめ
WEBアプリとネイティブアプリには、WEBブラウザ上で使用するか端末にインストールして使用するかという大きな違いがあります。これにより、速度、ユーザーの使用感などに差が出てきます。
WEBアプリとネイティブアプリは一長一短ですが、今後はネイティブアプリの方が需要が大きいと言えるでしょう。理由は、パソコンよりもスマホユーザーが多く、スマホユーザーはネイティブアプリを選択するからです。
ネイティブアプリを選択するなら、開発のハードルが低いiOSから入るのがおすすめです。
監修者
-
エンジニア経験0の状態から1年間独学で勉強して独立
さまざまなiOSアプリの開発に携わる
2021年6月にiOS専門のオンラインプログラミングスクール「iOSアカデミア」を開校。iOSエンジニアを目指す人のサポートにも力を入れています