「プロになるためのWeb技術入門」という本があります。
これこそ、初心者プログラマ、エンジニアにおすすめの本です。
本書の対象読者は以下の通り
- これからWEBアプリ開発に取り組む人
- WEBアプリ開発の経験はあるが、どのような仕組みで動作しているか説明できない人
- WEBアプリ開発プロジェクトを管理しているが、現場で使われている技術がいまいち把握できていないと感じる人
Webアプリケーションとは何か
Webアプリが出現する前はデスクトップアプリケーションが主流でした。
今もありますけどね。エクセルとかワードとかです。
特徴としては「インストール」が必要ということです。
一方で、Webアプリとは、ブラウザを通じてインターネット上で利用するサービスです。特徴は以下の通り
- 手元のPCではなく、サーバ上で行われている
- 画面はHTMLで表現。Webブラウザ上で表示
- PCにアプリケーションをインストールする必要がない
Webアプリケーションが難しい理由
Webアプリケーション習得は難しいと思われがちです。
既存技術の上に成り立っているため、知識が色々と必要であるためです(とはいえ、それぞれ浅い知識でも作ることは出来ますよ)
- プログラミング言語
- ネットワーク
- HTML
- アプリケーションサーバ
- OS
Webを支える技術の発明
Webシステムの基礎となる技術はいくつかあります。
歴史に沿って説明すると以下の通り
- 不特定多数向けのコンテンツを提供するため、WebサーバとWebクライアントを分ける
- ユーザによって、異なるコンテンツを生成したいという要求がでました。そこで、CGI(Common Gateway Interface)を利用して、動的なコンテンツを生成するようにした
- CGIは遅い!プロセスを毎回起動しなくて済むようにしよう→サーブレットが発明された
- しかしサーブレットは修正しにくい…→JSPによって、コードとデザインを分離した
こういう経緯を知れると学習に役立ちます。
その他、
- HTTPとは何か。リクエスト、レスポンスなど分かりますか?
- Webアプリの構成要素。三層構造説明できますか?
- SQLインジェクションなど当たり前のセキュリティ確保の仕組み知っていますか?
など、答えられなきゃ恥ずかしい、初心者向けの「基礎の基礎」情報が分かる本になっています。
大変オススメです。
【関連記事】
www.engineer-step.com