[no_toc]
Webアプリという言葉は聞いたことがあっても、どんなものがWebアプリなのか理解している方はあまり多くないのではないでしょうか?
実はアプリには様々な種類があり、それぞれ仕様や用途が異なります。Webアプリとは「アプリ」という概念の1つにすぎません。ではWebアプリとはどんなものを指しているのか。この記事では、
- アプリの種類
- それぞれの特徴
- Webアプリの仕組み
について解説していきます。
アプリの種類
あなたはアプリと聞いたとき、どんなものをイメージしますか?
多くの方はスマートフォンで使用しているアプリが浮かんでくるのではないでしょうか。実は「アプリ」と一括りにされがちですが、アプリには3つの種類があります。アプリを種類ごとに分けると、
- ネイティブアプリ
- Webアプリ
- ハイブリッドアプリ
この3つに分類されます。それぞれどういった特徴があるのか見ていきましょう。
WEBアプリ
Webアプリケーションは端末にインストールする必要がなく、インターネット回線があれば利用できるアプリケーションです。またWebサイトのように一方的に情報を伝えるのではなく、入力などによって動的なコミュニケーションをすることが可能です。
例えば、ランチに出かけるときなど「食べログ」を使う機会があると思います。食べログはインターネット上でレストランの情報をまとめているWebアプリで、回線さえあればどこでも見ることができますよね。
このようにインターネット上で動作するアプリがWebアプリに分類されます。
ネイティブアプリ
ネイティブアプリケーションはアプリ自体をスマートフォンやタブレットにインストールし、端末上のみで作動するアプリのことです。各端末のOS上で動作する仕組みとなっているので、指定されたOS上でしか利用できません。
またカメラや電卓アプリのように基本的にインターネット接続をしなくても利用することができます。iTunesStoreやGoogle Playからインストールして、スマートフォンやタブレット上で使用するアプリは、全てネイティブアプリケーションとなります。
ハイブリッドアプリ
ハイブリッドアプリは、いままでに紹介したWEBアプリとネイティブアプリの特徴を兼ね備えたアプリです。ブラウザでも端末にインストールしても使用することができます。
例えば、GmailやGoogle Mapsなどはインターネット上でもアプリとしても使用できますよね。最近では、ハイブリッドアプリの開発が一般的になっていますね。
Webアプリの仕組み
ここまでアプリの種類についてご紹介しました。ここからはWebアプリにフォーカスして、その仕組を解説していきます。
まずはこちらの図をみてください。
Webアプリは内部的に、
- クライアントサイド
- サーバーサイド
この2種類で構成されています。簡単にWebアプリをまとめるとユーザーがアプリに動作を要求するためのコンテンツがクライアントサイドで要求されたコンテンツを格納しているのがサーバーサイドです。
それぞれが重要な役割を持っているので、しっかりと理解しておきましょう。
クライアントサイドの特徴
クライアントサイドについて調べてみると、「HTTP」「FTP プロトコル」といった難しい単語が出てきます。
初心者の方がいきなりHTTPやFTPプロトコルについて理解することは難しいので、まずはクライアントサイドがどんなものなのかを知っておきましょう。
クライアントサイドを簡単にいうとユーザーが手に触れて見ることのできる領域を指します。
例えば、今まさにあなたが見ているこの画面も、スマホやパソコンから見る画面も総じて「クライアントサイド」と言います。まずはこのくらいの理解で大丈夫です。
詳しいことは実際にアプリ開発を行う際に理解していきましょう。
サーバーサイドの特徴
次に、「サーバーサイド」について説明します。先ほどと同様に、細かく説明するとかなり難しいので噛み砕いて解説します。
サーバーサイドを簡単に言うとユーザーが普段見ることや触れることができない領域のことです。もう少し掘り下げると、WEBアプリケーションのデータが収納されている場所を指します。
サーバー(server)という言葉には元来「提供する」といった意味があります。つまり、クライアントサイドから求められた情報やデータを「提供する」といった意味合いで解釈することができますね。
この記事の復習
アプリは以下の3種類に分類されます。
- Webアプリ:インターネット上で動作する
- ネイティブアプリ:端末にインストールして使用する
- ハイブリッドアプリ:Webとネイティブ、両方の性質を持っている
Webアプリは「クライアントサイド」「サーバーサイド」に分類されています。
- クライアントサイド:ユーザーが手に触れて見ることのできる部分
- サーバーサイド:WEBアプリケーションのデータが収納されている場所
今回は以上になります。あなたもWebアプリについてなんとなく理解出来たのではないでしょうか?
次回からは、Webアプリ開発の流れを解説いたします。