『プロになるためのWeb技術入門』の重要箇所をまとめた--Lesson1,2

皆様こんにちは、もしくははじめまして。IDEです。
一週間くらい前から『プロになるためのWeb技術入門』を読み始めました。
3分の1くらいまで読み進めているので、そろそろアウトプットをしようと思ってこの記事を書いている次第です。
あくまで要約(になっているかどうか)でのアウトプットなので、ちゃんと学びたいとこの記事を読んで思っていただいた方はぜひ購入して一緒に学びましょう!

転載にならないか、恐る恐る書いているのでこれはダメじゃない!?やこうした方がもっといい記事になるよ!という感想がありましたらぜひコメントをいただけると嬉しいです。

目次

  1. Lesson1 Webアプリケーションとは何か
  2. Lesson2 Webはどのように発展したか
    wwwの誕生からWebアプリケーション登場の流れ
    Webを支える技術の発明
    URLについて
    HTTPについて
  3. まとめ
  4. 参考文献

Lesson1 Webアプリケーションとは何か

本書では、最初に「そもそもWebアプリケーションってなんぞ?」という話からスタートします。
Webアプリケーションについての特徴を、デスクトップアプリケーションと比較しながら理解していきます。

 デスクトップアプリケーション   Webアプリケーション   ネイティブアプリケーション 
処理の主体 手元のPC サーバ 手元のスマートフォン
画面の表示 OSで表示 Webブラウザ上で表示 端末上で表示
インストールの有無 必要 不要 必要
主なアプリケーション Word,Excel,Internet Explorer Twitter,Amazon アイドルマスターシンデレラガールズスターライトステージ


恥ずかしながらデスクトップアプリケーションというものも知らなかったのですが、両方とも身近なものですね!
Twitterなどはアプリから見る人が多いと思うのでインストールの有無に関して勘違いしてしまいそうですが、ブラウザでの閲覧も可能なのでインストールの有無は不要ということになります。
ちなみにGoogle Play等からインストールするようなものはネイティブアプリケーションと呼ぶそうです。スマホゲームはほとんどがこれに当たるかな?
ネイティブアプリは、端末上のシステムを使って動作するため、Webアプリよりも動作が早い、というメリットが。
その反面、iOS版、Android版の両方を制作しないといけないことから開発コストが高いというデメリットもあります。


Lesson2 Webはどのように発展したか

Webアプリケーションが何物であるかをある程度理解したら、次にどのようにWebが発展し、アプリケーションが誕生したかを学んでいきます。
モノが生まれる背景には必ず歴史があります。
なぜそれが生まれたか、発展していったかを学ぶことでそのものに対して深く深く理解していきます。

wwwの誕生からWebアプリケーション登場の流れ

  • 1969年 ARPANETと呼ばれるインターネットの原型が登場します。
     しばらくは研究者及びその関係者の間のみで利用されていました。
  • 1993年 MosaicというWebブラウザが誕生。
     無料で利用できること、その頃にはテキスト・画像がHyper linkによって閲覧できるようになった(wwwの誕生)ことから、wwwの利用が大きく広がりました。
  • 1990年代〜2000年代 インターネットの利用の普及
     理由としてはPCの高性能化、低価格化及びADSL光ファイバーの普及でネットワークが安価に使えるようになったことがあげられます。
  • PerlC言語が開発されたことによりCGIの登場
     CGIによって動的コンテンツの生成が可能になったため、検索サイトやショッピングサイトを作れるようになりました。
  • Javaサーブレットの登場
     PerlC言語が大規模な開発には向いておらず、また性能にも問題がありました。
     そのため、オブジェクト指向やセキュリティなどの機能をサポートしていたJavaとWebアプリケーション開発をサポートする機能を持ったサーブレットが開発されます。
     →企業などの大規模システム開発にはJava/サーブレットが、個人Webサイトなどの開発にはCGI/Perlが使われるようになりました。
  • フレームワークの登場  前述の言語等に対する問題として、コーディング量が膨大であるという課題が残っていました。
     それを解決するしたのが、プログラムの再利用できる部分を増やしてアプリケーションを開発しやすくするための土台であるフレームワークです。
     フレームワークを元にしてライブラリやその他必要な部分を作り足していくことでアプリケーション開発をしていく手法が主流となりました。

    Webを支える技術の発明

    ネットワークの情報のやりとりでは、クライアント側とサーバー側で別れています。
    ではなぜ分ける必要があったのでしょうか?
    主な理由は2点。

  • 様々なコンテンツを不特定多数の人に公開するため、コンテンツをできるだけ1つのサーバーにまとめて管理を楽にしたかったため
  • 多くの人が自由にコンテンツを閲覧するために、サーバーとクライアントをインターネットで接続することでwwwを実現できるから。(利用者がサーバーを直接触るのは非現実的)

    →不特定多数の利用者が多様なWebコンテンツを利用するwwwを実現するために役割が分担されたのです。

    URLについて

      URLとは、インターネット上の住所のようなものです。
    ファイルを閲覧するために、場所を細分化してパス名まで指定することで(住所の部屋番号まで指定するような)それが可能になります。

     https://programmingnuoh.hatenablog.com/entry/2021/04/17/231510
    |--------|------------------------------|-----------------------|
    |1.スキーム|2.ホスト名                      |3.パス名                |
    

  • 1. スキーム  リソースを取得するための方法を表す(ほぼhttphttps
  • 2. ホスト名  リソースが存在するホスト(コンピューター)名を表す
  • 3. パス名  ホスト名で指定されたコンピュータ上のリソースの位置。ディレクトリ名とファイル名

    HTTPについて

    様々な種類のコンピューターがどのように通信をするかのルールである通信プロトコルの1つ。
    HTTP(Hyper Text Transfer Protocol)はシンプルで実装が簡単であるため、広く利用されるようになった。
    他の主な通信プロトコルFTPSMTPがある。


    まとめ

    本記事では、『プロになるためのWeb技術入門』のLesson1,2をまとめていきました。
    これから読み進めるにあたって踏まえておきたい前提知識の一つなので、しっかりとインプットしていきたいと思います。
    Lesson3以降はいよいよ本題に入っていくので、章ごとにアウトプットをして、知識を定着させていきます。

    最後までお付き合いいただいた方、ありがとうございました。


    参考記事

    今回の記事を書くに当たり、以下の記事を参考にさせていただきました。
    ありがとうございました。

  • Webアプリとは?特徴やアプリケーション開発について解説