ちょっと待って、それ本当にアプリで作る必要ある?

こんにちは、タカフミです!

みなさんは、もしナイスなサービスのアイデアが思いついたらどうしますか?
一番最初に考えるのが、スマホアプリでやるのかウェブアプリケーションとして提供するべきなのか、という点だと思います。

僕の周りにはたまに、こんな事を言う人がいるんですよね。。

僕の周りによくいる人

今はスマホの時代だし、スマホアプリでだすのがベストでしょ。
アプリだったら億万長者になれるかもしれないし!

うーん。

たしかに、スマホ全盛の時代にスマホアプリでとりあえず出してみるというのは悪くないと思います。でも、スマホアプリでサービスを提供することのデメリットについても、しっかりと把握しておかないと足元をすくわれることにもなるんです。

スマホアプリとウェブアプリのメリット・デメリットを認識することで、開発の無駄を少なくして、予想外のリスクを減らすことができる場合もあるのです。

あっ、ちなみに億万長者になれるかどうかについては、今回は触れません(笑)

スマホアプリ

猫も杓子も「アプリ、アプリ」と言っていますが、今一度アプリというものについて理解を深めていきましょう。

アプリってそもそもなに?

アプリケーション(Application)とは、OS上にインストールして利用するソフトウェア全般のことを意味する言葉です。

メモ帳などの簡易なものからエクセルやワード・スカイプ・ブラウザなど、規模の大小を問わず「具体的な作業を目的としているソフト」は全てアプリケーションだと言えます。

また、アプリケーションにより作り出された情報のことをコンテンツと表現する事があります。

引用:http://www.toha-search.com/it/application.htm

アプリとはアプリケーションの略です。最近ではスマートフォン上で動くLINEやFacebookなどのアプリケーションの事を「アプリ」と指すことが多くなってきました。

しかし、なにもスマートフォン上で動くものだけが「アプリ」というわけではありません。コンピュータで使うワードなども「文章作成アプリ」ということも言えますが、一般的には「文章作成ソフト」ということが多いです。

とどのつまり、引用先にもあるように「何かしらの作業を目的としたソフト」は全てアプリケーション→アプリということが言えます。

メリット

アプリが多くの人に使われるようになった理由には、スマートフォンの普及だけではなく、スマホアプリに多くのメリットがあったからだと言えます。

豊富なジェスチャー

これまでのフィーチャーフォンやパソコンでは認識できるジェスチャーが限られていました。キーボードを使った入力や、マウスによるクリックなどです。

スマートフォンの性能が向上したことにより、ディスプレイ上の複数のタップを同時に認識できるようになったのです。これにより、ピンチやスワイプ、フリックなどの様々なジェスチャーに対応出来るようになりました。

アニメーションを多様したUX

ブラウザ上で動作するウェブアプリケーションと比べると、デバイス上でネイティブにに動くスマホアプリケーションはリッチなアニメーションが得意です。ボタンやアイコン、ビューなどがグラフィカルに動くことで、これまでに体験したことのないUXを提供することが可能となります。

カメラやGPSセンサーの利用

スマートフォンにはカメラやGPS、加速度センサーなどが搭載されています。これらのセンサーを利用することで、ウェブアプリケーションでは実現することが難しいユニークなマッチングアプリや画像加工アプリを作ることができます。

デメリット

一見するとメリットだらけのアプリのように思えますが、デメリットがもちろん存在します。デメリットもしっかりと認識しましょう。

バージョンアップへの対応

スマートフォン業界ではiOSとAndroidの2つが大きなシェアを持っています。これらの、OSはユーザービリティの向上やセキュリティの観点から、継続的にバージョンアップが行われています。バージョンアップに伴って、以前は動いていたアプリが思わぬところでクラッシュ(強制終了)してしまうことがあります。アプリは一度作って終了ではなく、OSのバージョンアップに合わして継続的にアップデートしなくてはいけません。リリース後のサポートを行えるリソースをしっかりと確保できていないと、バグが生まれる原因となり、結果的にユーザーが離れてしまうことに繋がってしまう危険性があります。

iOSとAndroidに対応するコスト

究極的な事を言うと、ウェブアプリケーションの場合はhtmlファイルがあればiOS/Androidの両方に対応することができます。しかし、アプリとなると話は別です。iPhoneアプリを作る場合にはObjective-C または Swift、Androidアプリの場合はJavaを使って開発をしなくてはいけません。1つのサービスを実現するために、異なる言語を使ってアプリケーションを開発する必要があるのです。

最近ではこれらの問題を解決するために、1つの言語を使って同時にiOSとAndroid向けのアプリケーションを開発できるxamarinというシステムも生まれています。気になる方はこちらをご覧ください。

続々発売されるデバイスへの対処

近年、スマホユーザー数の増加に伴い市場に様々なデバイスが登場するようになりました。比較的、端末が限らているiPhoneですらiPhone4、iPhone5、iPhone6、iPhone7Plus、iPadが存在しています。これらのデバイスは画面解像度やメモリ、対応できるOSのバージョンなどが異なります。これが、Androidを搭載したデバイスとなると、もう数が多すぎて滅茶苦茶な状態になってしまいます。このような状況で、多くのユーザーに満足してもらえるアプリを作るのはとても大変だと言えます。

プラットフォームへの依存

iOSアプリの配信はAppleが提供するAppStore、Androidアプリの配信はGoogleが提供するPlayストアで行われています。プラットフォームがあることで、世界中のユーザーにアプリを提供することが可能となります。

一方で、プラットフォーム上でしか配信が出来ないため、AppleやGoogleのポリシーなどに違反した場合はプラットフォームからアプリが削除されてしまう可能性があるのです。どんなに、人気のアプリもプラットフォームから削除されてしまっては、どうすることも出来ないのです。

 

ウェブアプリケーション

スマホアプリより長い歴史をもつ、ウェブアプリケーションとはどんなものでしょうか?スマホアプリ全盛の時代に、今一度ウェブアプリケーションの魅力を探ってみましょう。

ウェブアプリケーションってなに?

こういった、ややこしい時にはwikipediaさんの出番です。

ウェブアプリケーション(Web application)は、インターネット(もしくはイントラネット)などのネットワークを介して使用するアプリケーションソフトウェアである。多くの場合、これらのアプリケーションは、Webブラウザ上で動作するプログラミング言語(たとえばJavaScript)によるプログラムとWebサーバ側のプログラムが協調することによって動作し、ユーザはそれをWebブラウザ上で使用する。

ウェブアプリケーションの一例としては、ウィキペディアなどで使われているウィキブログ電子掲示板銀行インターネットバンキング証券会社オンライントレード電子商店街などネット販売ショッピングカートなどを挙げることができる。

ウェブアプリケーションに対して、ローカルのデスクトップ環境上で動作するアプリケーションは、デスクトップアプリケーションやスタンドアロンアプリケーションと呼ばれる。

【引用先はこちら

うーん。

なんか、難しいことを言っていますが簡単に言うと、ウェブアプリケーションはクライアント側の要求に対して、サーバーが応答して適切なデータをクライアントに返す様なアプリケーションのことをいいます。

クライアントとはサーバーにアクセスするためのデバイスのことです。コンピュータやスマホがそれにあたります。

クライアント側でもJavascriptなどのプログラミング言語を使うことで、インタラクティブに動くアプリケーションを作ることができます。

メリット

アプリ全盛の時代でも、ウェブアプリケーションにしかないメリットもあります。ここで、よく勉強しましょう。

ダウンロード不要

スマホアプリだと、アプリを利用する前に必ずAppStoreなどでダウンロードしなくてはいけません。WiFi環境であれば、すぐにダウンロード・インストールが行えますが出先では難しくなります。

一方、ウェブアプリケーションの場合はURLさせ分かっていれば、すぐにサービスを利用することができます。当たり前の様に思えることですが、これは結構重要なことです。

ブラウザ1つで動かせる

ウェブアプリケーションはHTTPプロトコルを使ってサーバーとクライアント間の通信手段を確保してしまえば、ウェブブラウザのみでアプリケーションを動かすことが出来てしまうのです。

つまり、AndroidだろうがiPhoneだろうが、WindowsPhone、BlackberryでもChromeやSafari、Firefoxなどのウェブブラウザさえ使えれば、OSに依存することなくサービスを提供することができます。

デメリット

デメリットについてまとめていきます。

リッチなUXを提供することが難しい

GPSセンサーや加速度センサーなどが使えないウェブアプリケーションは、どうしてもスマホアプリに較べてUXは劣ってしまう場合があります。

スマホアプリならGPSセンサーからすぐに現在地を取得して、周辺情報を表示することが出来るのに、ウェブアプリケーションではユーザーに郵便番号を入力してもらうなどの作業が必要になってしまったりするのです。

画像や動画を使ったサービスは流行りにくい

ユーザーが自ら動画や画像をシェアするようなSNSサービスは、ウェブアプリケーション向きではありません。ウェブアプリケーションでも、実装することは可能ですが、日々のちょっとしたライフスタイルを写真や動画で友達と共有するようなサービスは機動性の高いスマホアプリの方が向いていると言えます。

 

迷った時はLINE@で無料相談

これまで、スマホアプリとウェブアプリケーションのメリット・デメリットについてお話しました。しかし、これからあなたが作ろうとしているサービスをどちらで展開していけば良いのか、ハッキリと分からないことがあるかと思います。

そんな方に向けて、LINE@を使った無料相談をご用意しております。1人で悩まず、お気軽にご相談ください。