みなさん、こんにちわ。
本ブログの管理人のRRです。
最近、「時代の流れに取り残されまい!」と、一大決心しまして、プログラミング学習を始めました。
40歳手前にして個人的に大きな挑戦です!
ここではそんな私のプログラミング学習日記を綴っていきたいと思います。
初心者が学習したことを公開していきますので、
- プログラミング学習を始めてみようかなと思っている方
- プログラミング初学者でまだまだ知識が定着していない方
に役立つように学んだことを整理していこうと思います!
本日のテーマは「Webアプリケーションとはなにか」です。
これまた第一回同様にコーディングする前のまずは基本的なテーマですね!
では、いってみましょう!!!
WebブラウザがWebアプリケーションを動かす
TwitterやFacebookを使うときを思い出してみて下さい。
スマホで見るのが基本だと思いますが、PCを使って見るときもありますよね。
このとき、みなさんはWebブラウザを使って見ていると思います。
Webブラウザは、みなさんが使うスマホやPCに最初からインストールされています。
WindowsならEdge、MacやiponeならSafariみたいなやつです。
その他にもGoogle ChromeやFirefoxなどもあり、好きなブラウザを選択できます。
ブラウザはどれを使っても等しくWeb上のコンテンツが見られます。
特定のブラウザしか利用できないといったことはほとんどありません。
要するに、Web上でアプリケーションを公開すれば世界中の誰もが、そのアプリケーションを手軽に利用できるようになります。
Webについて正確に理解する
そもそもWeb(ウェブ)とは何なのか?
ひとことでいうと、Webとは、「インターネット上にあるクモの巣のようなネットワーク」です。
「Webサービス」とか「Web上の~」といった文脈で使うときの「Web」は、ワールドワイドウェブ(World Wide Web:WWW)という意味で用いられます。
ワールドワイドウェブは、インターネット上で提供される仕組みです。
語源としては「世界に広がる蜘蛛の巣」です。
世界中に広がる複数のネットワークが相互に接続して構築された巨大なネットワークが、蜘蛛の巣のように広がっているイメージからきています。
このように蜘蛛の巣のように広がるワールドワイドウェブで情報と情報をつないでいるのが、ハイパーリンクです。
ハイパーリンクは、ワールドワイドウェブ上のページを書くときにに使われるHTMLなどの記述言語であるハイパーテキストを、リンクさせることができます。
インターネットについて正確に理解する
インターネットというと、現代人の生活に不可欠な存在として認識されるモノの代表的なひとつです。
- ネットニュースを見る
- 動画を見る
- ブログを読む
- SNSを見る
- モノを買う・売る
などなど。
また、このような行動を日本だけにとどまらず、海外のWebサービスでも行うことも出来ます。
インターネットとは、「ネットワーク間のネットワーク」という意味として、名づけられています。
英語にするとイメージがしやすいです。
Inter⇒中間、相互の
net⇒網
そのまま訳すと、「網を相互につなぐもの」、つまり「ネットワーク間のネットワーク」といえます。
そして、インターネットはあらゆる国や組織のネットワークを相互につなぐ世界規模のネットワークといえます。
個々人のコンピュータ同士を繋げることでネットワーク組織を構成します。
会社や学校、家庭といった単位がネットワーク組織の例です。
そして、NTTやauなどの通信事業者がそれらのネットワーク組織をさらに大きなネットワーク組織としてまとめあげます。
最後には、それら通信事業者同士を繋げることで、現在のインターネットが構成されました。
インターネットに繋がっているコンピュータは、すべてのコンピュータ同士が物理的に繋がっています。
コンピュータからコンピュータまで、どれだけ長い距離(たとえば海外)があってもです。
コンピュータは、電線やケーブル、無線による電波など、なんらかの形で繋がっています。
皆さんが Webサイトを閲覧したりWebアプリケーションを利用できるのは、
- 目の前のコンピュータがインターネットに繋がっている
- WebサイトやWebアプリケーション自体も、コンピュータを通してインターネットに繋がって公開されている
という2つの側面により成立しています。
「Webアプリケーションを作る」について理解する
つまり、Webアプリケーションを作るとは、
「だれもがブラウザで利用できるアプリケーションをつくり、完成したモノをWebへ公開すること」
を指します。
おわりに
いかがだったでしょうか?
プログラミング学習日記②では、「Webアプリケーション」について掘り下げました。
私は今、RubyとRailsを勉強していますが、これらはそのアプリケーションを作るためのプログラミング言語にあたります。
こういった形で勉強するプログラミング言語について、マクロに捉えてみると、学習するときの理解度も深まるのでおすすめですね。
ひきつづき学習がんばっていきます!!
では、また!