一言で!
Webアプリとは
ブラウザで開くだけで使えるアプリ。インストールは要らない。
他には?
自分のPCの中に本体はない。ただし、開くたびに、作り手が直した最新の姿で現れる。
Webアプリとは?
英語ではweb application。ブラウザで開いて使うアプリのこと。
Gmailや、ブラウザで開く地図、オンラインの表計算が、このなかまに入る。
開くと、裏で何が起きているか
ブラウザでURLを開くと、アプリの本体が置いてあるサーバーへ、「画面をください」という頼みが飛ぶ。
サーバーは、画面の部品と、その人のデータを組み立てて送り返す。
ブラウザは、届いた部品を並べて画面にする。ボタンを押せば、また頼みが飛ぶ。
ブラウザ
(あなたのPC)
| ^
| (1) | (2)
v |
サーバー
(アプリの本体とデータ)
(1) 画面をください
(2) 画面の部品と、あなたのデータ
計算もデータも、ほとんどはサーバー側にある。手元のPCが受け持つのは、見せることと頼むことだ。
この作りのおかげで、Webアプリには次のよさがある。
- インストールが要らない。URLを開けば、すぐ使える。
- どのPCやスマホから開いても、同じデータの続きから使える。
- URLを送るだけで、ほかの人と同じデータを分け合える。
本体はサーバーに、手元には画面だけ。
本人は、とくに説明もなく、いつの間にか変わっている
ジョジョ第4部の広瀬康一は、物語が進むうちに背が縮み、髪型も少しずつ変わっていく。
作者の都合で描かれ方が変わっただけで、読者が気づいたときには、もう変わっている。
Webアプリも同じだ。作り手がサーバーの本体を直せば、次に開いた全員が新しい姿を見る。
使う人は、何もダウンロードしていない。更新のボタンも押していない。
開くたびに、作り手が直した最新の姿で現れる。
ダウンロード型は、進化の過程がはっきりしている
一方で、康一のスタンド「エコーズ」は、ACT1、ACT2、ACT3と、姿も名前も変えて進化する。
どこで変わったかが、はっきり分かる。
これは、PCやスマホに入れて使うダウンロード型のアプリの特徴だ。
スマホ・PC
(アプリの本体を入れてある)
| ^
| (1) | (2)
v |
サーバー
(データ)
(1) データをください
(2) データだけ
(3) 新しい版は、入れ直したときに届く
入れたアプリは、新しい版が出ても、こちらが入れ直すまで古い版のまま動く。
たとえばGmailは、ブラウザで開けばWebアプリ、スマホに入れたGmailのアプリならダウンロード型になる。
電卓やメモ帳のように、外と通信せず、PCの中だけで完結するアプリは、スタンドアロンと呼ぶ。
PC
(アプリの本体とデータ)
|
x サーバーへは行かない
こちらは手元の単行本に近い。買った巻の中の康一は、ずっとその姿のままだ。
あ、スタンドは「スタンドアロン」の略ではなくて、ダウンロード型アプリのことを言ってるので、紛らわしかったなら申し訳なす。
- Web:ブラウザで開く。本体はサーバーにあり、いつの間にか最新になる(ブラウザで開くGmail)。
- ダウンロード型:入れて使い、裏でサーバーとつながる。入れ直すと新しい版になる(スマホのGmailのアプリ)。
- スタンドアロン:入れて使い、PCの中だけで完結する。入れたときのまま変わらない(電卓、メモ帳)。
違いは、本体がどこにあって、どう新しくなるか。
知らない間に変わる、の裏側
開くたびに最新、は良いことばかりではない。
昨日まであったボタンが、今日は別の場所にある。前の版に戻したくても、使う人の側では戻せない。
作る側にも重さがある。サーバーを動かし続け、守り続けるのは、作り手の仕事になる。
品質を維持する苦労は、バイブコーディングの記事でも少し触れた。
他にも様々なキツさがある。
Webサーバー、クラウドサーバーを動かし続けるかぎり、外部からの攻撃にあう頻度は高い。
Webアプリは公開や共有の容易さと引き換えに、大きなリスクが潜在していることも確かだ。
豆知識
- サーバー: アプリの本体やデータを置き、頼まれた仕事をこなして返すコンピューター。
- ブラウザ: ChromeやSafariのように、Webのページやアプリを画面に出すソフト。
- CGI: 送られた内容に応じてサーバーがプログラムを動かし、ページを作って返す仕組み(RFC 3875)。
- Ajax: 画面全体を読み直さず、一部だけを裏で取り替えるやり方の呼び名。2005年に名づけられた。
- WebAssembly: ブラウザの中で、プログラムをアプリ並みの速さで動かすための形式(W3C)。
- WebGPU: ブラウザからGPUを使うための仕組み(web.dev)。
歴史
はじまり:見るための仕組みだった
Webは、世界中の研究者が情報を分け合うために、CERNで生まれた(CERN「Web History」)。
1991年8月、ティム・バーナーズ=リーがその仕組みを公に知らせる(CERN「Web History」)。
この頃のWebは、置いてある文書を、そのまま見せるためのものだった。
1993年には、送った内容に応じてサーバーがページを作って返すCGIが使われはじめる(RFC 3875)。
見るだけのWebに、頼めば答えが返る、アプリの芽が出た。
壁と転換点:ボタンのたびに待たされる
それでも、ボタンを押すたびに画面全体を読み直し、そのたびに待たされた。
使い心地は、PCに入れたアプリにまるで届かなかった。
2004年4月、Googleが、ブラウザで使うメールのGmailを出す(Google Press Center(2004年4月1日))。
2005年2月には、Googleマップが続く(Official Google Blog(2005年2月8日))。
画面の一部だけを裏で取り替えるやり方は、同じ月にAjaxと名づけられ、一気に広まった。
ブラウザでも、ここまでできる。そう示したのが転換点だった。
いま進んでいる開発
- 2019年12月、ブラウザの中でプログラムをアプリ並みの速さで動かすWebAssemblyが、W3Cの正式な標準になった(W3C(2019年12月5日))。
- 2025年11月、ブラウザからGPUを使うWebGPUが、Chrome・Edge・Firefox・Safariのすべてで使えるようになった(web.dev(2025年11月25日))。
この先
ブラウザでできることは、ダウンロード型のアプリへ年々近づいている。
康一の背がどこまで縮むのかと同じで、Webアプリがどこまで来るのかは、まだ分からない。
まとめ・私見
毎日開いているGmailやChatGPTなども、気づかないうちに何度も姿を変えている。
姿を変えれるのは、数多くの人間が想像を絶する試行錯誤や協議を重ねた結果だ。
世界中のユーザーが支えている結果でもある。
正直、セキュリティがこんなに騒がれている世の中で、今後Webアプリを続ける困難さは増すばかり。
今後は数が減っていくと思っている。変わっていける体力がないと、何事もやってられないからだ。
年表
| 年代・年 | 主な出来事 | 主な人物・組織 | 主な国・地域 | 特徴 |
|---|---|---|---|---|
| 1991年8月 | WWWが公に知らされる | ティム・バーナーズ=リー | スイス(CERN) | 研究者が情報を分け合うための、見る仕組みとして始まった。[CERN「Web History」](https://web30.web.cern.ch/web-history.html) |
| 1993年 | CGIが使われはじめる | NCSA | アメリカ | 送った内容に応じて、サーバーがページを作って返せるようになった。[RFC 3875](https://www.rfc-editor.org/rfc/rfc3875) |
| 2004年4月 | Gmailが出る | アメリカ | ブラウザで使うメールとして公開された。[Google Press Center](http://googlepress.blogspot.com/2004/04/google-gets-message-launches-gmail.html) | |
| 2005年2月 | Googleマップが出る | アメリカ | 同じ月に、画面の一部だけを取り替えるやり方がAjaxと名づけられた。[Official Google Blog](https://googleblog.blogspot.com/2005/02/mapping-your-way.html) | |
| 2019年12月 | WebAssemblyがW3Cの標準になる | W3C | 世界 | ブラウザの中で、プログラムをアプリ並みの速さで動かせるようになった。[W3C](https://www.w3.org/press-releases/2019/wasm/) |
| 2025年11月 | WebGPUが主要ブラウザすべてで使えるようになる | Chrome・Edge・Firefox・Safari | 世界 | ブラウザからGPUを使えるようになった。[web.dev](https://web.dev/blog/webgpu-supported-major-browsers) |