そもそも「Webアプリ」とは何か?

[no_toc]

Webアプリってそもそもどんなアプリなの?

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アプリ開発の流れを解説いたします。

この記事を書いた人

【プロフィール】
DX認定取得事業者に選定されている株式会社SAMURAIのマーケティング・コミュニケーション部が運営。「質の高いIT教育を、すべての人に」をミッションに、IT・プログラミングを学び始めた初学者の方に向け記事を執筆。
累計指導者数4万5,000名以上のプログラミングスクール「侍エンジニア」、累計登録者数1万8,000人以上のオンライン学習サービス「侍テラコヤ」で扱う教材開発のノウハウ、2013年の創業から運営で得た知見に基づき、記事の執筆だけでなく編集・監修も担当しています。
【専門分野】
IT/Web開発/AI・ロボット開発/インフラ開発/ゲーム開発/AI/Webデザイン

目次