スクリプトとCGIについて小学生でもわかるように説明してみた
プログラム
CGIを説明する上で必要なので簡単に紹介。
ざっくり説明するとユーザーがコンピューターに出す指示された任務。例えば
- メール送信機能作って!
- 赤いボタンを表示させたい!
など
CGI
Google Chromeなどのwebブラウザが出した要求に応じてWebサーバがプログラムを起動させる仕組みのこと。
ホームページを見せてくれ!という要求に対し、その場でホームページのファイルを作って返すための仕組みと思ってください。要求を受信したwebサーバーはCGIによってプログラム(指示された任務)を実行します。プログラムはwebブラウザから送信されてきたデータやサーバー自身が持っているデータなどからファイルを作成し、サーバーを通してwebブラウザに送信されます。
スクリプト
人間が読める言語に変換したプログラムをコンピュータが分かる形に変換する作業(コンパイル)を人間が意識しないで済むプログラム。プログラム(指示された任務)が動くまでの流れは
1.人がわかる言語でコンピューターにやって欲しいことを書く(プログラミング)
2.1で書いたコードをPCさんに分かる言語に翻訳する。(コンパイル)
3.PCさんが2で実行した説明書を読んで働く(実行)
この内2のコンパイルが人間から見てやってないように見えるのがスクリプト
クライアントサイドスクリプト
ブラウザ側で処理をする時に動作するのでクライアントサイドの言語。cssやjavascriptなどが挙げられる。
例えばログイン画面でパスワードが8文字以上必要なのに6文字で登録ボタンを押した時、CGI(処理)を実行する前にエラーを出す行為がクライアントサイドスクリプトになる。ログインページを読み込んだ時に用意されたjavascriptを実行しているだけなのでページは更新されずにエラーメッセージが表示される
サーバーサイドスクリプト
WEB サーバー側でCGI(処理)を行いクライアントに返すプログラム言語。Ruby,phpなどが挙げられる。
例えばログイン画面で誤ったパスワードを入力し送信した場合、Webサーバー(CGI)がプログラム(指示された任務)を起動してパスワード確認をするその結果、エラーであることをユーザーに知らせるといった行為。CGI(処理)を実行しているのでページは一度更新される
Discussion