見出し画像

超基本的なTCP/IP、HTTP、HTML、リレーショナルデータベースの基本概念

今更ではありますが、改めて超基本的な概念です!そんなことわかっているよ!という方は飛ばしていただければ(あと画像の文字が間違っているのはご愛嬌ということでw)

TCP/IP、HTTP、HTML、リレーショナルデータベースの基本概念です

1. TCP/IP (Transmission Control Protocol/Internet Protocol)

TCP/IPは、インターネットを通じてデータを送受信するための基本的な通信プロトコルです。このプロトコルスイートは、データのパケット化、送信、受信を行い、信頼性のある通信を提供します。

  • TCP (Transmission Control Protocol): データを小さなパケットに分割し、送信後に再構成する役割を担います。また、送信データの正確な受信を確認し、エラーを検出して再送信を行います。

  • IP (Internet Protocol): パケットを送信先に届けるためのアドレス指定を行います。IPアドレスを用いてデバイスを識別し、パケットのルーティングを行います。

2. HTTP (HyperText Transfer Protocol)

HTTPは、ウェブブラウザとウェブサーバー間でデータを転送するためのプロトコルです。主にウェブページのリクエストとレスポンスを処理します。

  • リクエスト: クライアント(通常はウェブブラウザ)がサーバーに送信する要求。例えば、ウェブページの閲覧リクエスト。

  • レスポンス: サーバーがクライアントに送信する応答。例えば、要求されたウェブページのHTMLコード。

3. HTML (HyperText Markup Language)

HTMLは、ウェブページを作成するためのマークアップ言語です。テキスト、画像、リンク、フォームなどのウェブコンテンツを構造化し、ブラウザがそれを適切に表示できるようにします。

  • タグ: HTMLでは、要素を定義するためにタグを使用します。例えば、`<p>`タグは段落を示し、`<a>`タグはリンクを示します。

  • 属性: タグに追加情報を提供するために属性を使用します。例えば、`<a href="https://example.com">`の`href`属性はリンク先のURLを示します。

4. リレーショナルデータベース

リレーショナルデータベースは、データをテーブル形式で管理するデータベースシステムです。各テーブルは行と列で構成され、データは行に格納されます。リレーショナルデータベースは、データの関係性(リレーション)を利用して効率的に情報を管理します。

  • テーブル: データを格納する基本的な単位。各テーブルは特定の種類のデータを含み、行(レコード)と列(フィールド)で構成されます。

  • 主キー: 各行を一意に識別するための列。例えば、ユーザーテーブルの`user_id`。

  • 外部キー: 他のテーブルの主キーを参照するための列。例えば、注文テーブルの`user_id`がユーザーテーブルの`user_id`を参照します。

図解で理解する

TCP/IP

[ クライアント ] ---TCP/IP---> [ ルータ ] ---TCP/IP---> [ サーバー ]

HTTP

[ ブラウザ (クライアント) ] ---HTTPリクエスト---> [ サーバー ]
[ ブラウザ (クライアント) ] <---HTTPレスポンス--- [ サーバー ]

HTML

<!DOCTYPE html>
<html>
<head>
    <title>Example Page</title>
</head>
<body>
    <h1>Welcome to My Website</h1>
    <p>This is an example paragraph.</p>
    <a href="https://example.com">Visit Example</a>
</body>
</html>

リレーショナルデータベース

ユーザーテーブル
+----------+------------+--------+
| user_id  | username   | email  |
+----------+------------+--------+
| 1        | Alice      | alice@example.com |
| 2        | Bob        | bob@example.com   |
+----------+------------+--------+

注文テーブル
+----------+----------+--------+
| order_id | user_id  | amount |
+----------+----------+--------+
| 1        | 1        | 100    |
| 2        | 2        | 200    |
+----------+----------+--------+

このように、各概念はインターネットやウェブアプリケーションの基盤となる重要な要素です。

いいなと思ったら応援しよう!

川村康弘(Yasuhiro Kawamura、Ted)@クラウド屋
おもしろきこともなき世を面白く 議論メシ4期生http://gironmeshi.net/ メンタリストDaiGo弟子 強みほがらかさと発散思考 外資系企業でインフラエンジニア