Webサイトの運用担当者の中には、「エンジニアとのコミュニケーションで理解できない単語が多い」「開発作業にどれくらい時間がかかるのかイメージできない」という方も多いのではないでしょうか。
そこで、本連載では全10回にわたって非エンジニアやインターネット初心者の方に向けて普段触っているWebサイトの裏側はどうなっているのか、どう作られているのかについてわかりやすく解説していきます。
連載の後半では実際にコードを書きながらフォームを作ってみるので、手を動かしながら理解してもらえると幸いです。
第1回の今回は、「インターネットの仕組み」と「Webの変遷」について説明します。
もはや電子機器であればすべて接続できそうな勢いのインターネットですが、そもそもインターネットとは、どのような仕組みで世界中の情報や人々を繋げることができるのかなど、インターネットとWebの歴史に関して紹介します。
インターネットが当たり前となった今、なかなか意識しない内容ですが、基礎的な部分をおさえておくとITの理解が早まるはずです。
インターネットの仕組み
一般的なオフィスのように、複数台のパソコンが集まり、繋がっている状態をネットワークと言います。
ネットワークで繋がれているパソコン同士はファイルやフォルダを共有でき、ネットワークを通して情報を共有し、受け渡しができるようになります。このネットワークを開放して、外部のネットワークと繋がるようにした仕組みがインターネットです。
世界中の人々と情報を共有し、受け渡しできるネットワークがインターネットです。そして、インターネットの接続は「TCP/IPプロトコル」というものによって支えられています。
ここで言うプロトコルとは、コンピュータの世界では、コンピュータ同士のデータの受け渡しの規約を指します。いわばルールのようなもの。コンピュータ世界にはいくつものルールがありますが、インターネットで使われている通信の規約としては、TCP/IPプロトコルがスタンダードとして世界中で使われています。
データを他のパソコンに送る場合、どこに届ければ良いか識別するのがIPの役割です。そして、データがきちんと届いているか確認し、チェックを行うのがTCPの役割になります。
他にも、例えばWebページの送受信はHTTPプロトコル、ファイル転送はFTPプロトコル、メール転送はSMTPプロトコルを使うよう決まっています。
ドメインとサーバーについて
続いて、Google ChromeなどのWebブラウザなどで皆さんが閲覧しているWebサイトの仕組みを簡単に紹介しましょう。
Webサイトの仕組みは、現実の世界の家やオフィスに例えるとわかりやすいです。
家に住む場合、家だけでなく、自分が住んでいる場所を知らせるための住所が必要になります。これをWebサイトで使われているものに置き換えると、家が「サーバー」、住所が「ドメイン」というものになります。
具体的に説明しましょう。
Webページを公開するうえでは「HTMLファイル」を作ります。このHTMLファイルが、皆さんが普段閲覧しているWebページの正体です。中身はWebブラウザなどに対する指示書のようなもので、HTML(HyperText Markup Language)という言語を使って記述されています。
このHTMLファイルをさきほど紹介したサーバー、特にWebサイトの場合は「Webサーバー」にアップロードします。Webサーバーとは、HTMLファイルや画像を送受信する役割を持つWeb専用のサーバーで、Webページを公開したい場合はまずWebサーバーにファイルや画像を格納します。
これで一応は閲覧できる状態になります。直接つながっているパソコンであれば、Webブラウザにてファイルの場所を指示すれば表示されます。しかし、インターネットの世界でどこからでも閲覧できるようにするためには、住所が必要です。
そこで、ドメインが必要になります。ドメインとは、例えば「http://www.yahoo.co.jp」などのURL(Uniform Resource Locator)の「yahoo.co.jp」の部分です。
このドメインをインターネットの世界で「DNS(Domain Name System)」と呼ばれるものに登録すれば(インターネットサービスプロバイダなどが管理しています)、Webブラウザで閲覧できるようになります。
ちなみにWebサイトのURLがhttpから始まっているのは、Webページが「HTTP(Hypertext Transfer Protocol)」というプロトコルで送受信されるためです。例えば、ファイル転送などに使うFTPというプロトコルで通信する場合は、「ftp://~」というURLが使われます。
ドメインやサーバーの利用料は年間10,000円前後で使えるものもあります。Webサイト公開のコストが大幅に低下したおかげでこれだけWebサイトを公開する企業や個人が増えたのではないかと思います。
Webの変遷
最後にWebの歴史を紹介します。Webには捉え方として「Web1.0」と「Web2.0」があります。
これらの単語は具体的に定義されている用語ではなく、あいまいさも含んでいますが、Webのあり方を表しています。前時代的なWebのスタンスをWeb1.0、近代のスタンスをWeb2.0と称しています。もともとのWebの存在や構造は、紙媒体がWebページに変化した程度に過ぎず、情報の伝達も一方的でした。
Web1.0
Web1.0の時代は、マスメディアやホームページ所有者などの発信者が一方的に情報を伝達し、閲覧者が一方的に受け取るだけでそこに閲覧者からの返答やお互いのコミュニケーションはありません。そこに正誤判断はなく、かなり閉鎖的なWebのあり方がWeb1.0と呼ばれています。
技術的に見ても、HTMLやCSS、CGIなどの静的な動きを担うものしかありませんでした。当時のWebページは、表示内容を部分的に更新することができず、新しい情報を取得するにはWebページをまるごと読み込みなおす必要がありました。
地図を見る際も、表示場所や表示スケール(拡大/縮小)を少し変更するだけでWebページ全体を更新しなければならず、しかもネットワークの速度が遅かったので時間がかかってしまい、決して利便性が高いとは言えませんでした。
Web2.0
しかし技術は進歩し、特にコンピュータが理解しやすいXML技術の発達により、動的でインタラクティブなやりとりが可能で、ユーザー体験をリッチにするWebサービスが続々と登場するようになりました。
情報は発信者が一方的に伝達するだけでなく、今まで閲覧者であった方々が発信者にもなりえるようになりました。身近なところだと、Google Mapやブログ/SNS、ユーザー参加型で辞書を構築していくWikipediaが代表的なサービスとなります。
情報は閲覧者によって吟味されます。時には賞賛され、時には批判を浴びますが、注目された情報はSNSを通じてすさまじい勢いで拡散されます。情報発信者と閲覧者がWebを介して接点を持つようになります。これがWeb2.0の概念です。Webの歴史は情報のやり取りの歴史です。
一方的な情報発信(Web1.0)から双方的な情報発信(Web2.0)に変化しました。この流れはますます加速して、今や人々の中でWebはメインコミュニケーションツールへと変化していっています。
* * *
インターネットの基本構造からインターネットを理解する上で身近なWebサイトの仕組み、そしてWebのあり方を紹介しました。
インターネットやWebが登場して、まだ20年程度ですが、短時間で急激な変化を遂げているのがご理解いただけたかと思います。歴史を知ると、今後のITの方向性も見えてきます。ぜひ頭に入れておいてください。
次回は、実際にWebサイト/Webサービスを作るためのプログラミング言語について詳しく解説していこうと思います。言語によって難易度も違いますが、どんな特徴があるのかなど理解できるはずです。
著者紹介
TechAcademy (https://techacademy.jp/)
プログラミングやWebデザイン、アプリ開発が学べるオンラインスクールを運営。
TechAcademyマガジンでは、プログラミングやWebデザインなど技術に関する最新トレンド、ツールの使い方を紹介しています。開発作業や学習に役立つコンテンツがご覧になれます。
なお、本稿はTechAcademy の「はじめてのプログラミングコース」を元に解説しています。