「コンピュータはなぜ動くのか」メモ③
メモ③
〜〜〜〜〜〜〜〜〜
第7章:オブジェクト指向プログラミングを語れるようになろう
・オブジェクト指向プログラミング(Object-Oriented Programming)
・関連する関数や変数をグループ化することで、以下の利点がある。
→保守が容易
→大規模なプログラムに適している
・オブジェクトが他のオブジェクトの持つ関数を呼び出すこと = メッセージ・パッシング
★別途「オブジェクト指向でなぜつくるのか」をメモするのでここでは以上。
第8章:作ればわかるデータベース
・データベース = そもそも、社内のデータを一元管理できるようにした基地
・DBMS(DataBase Management System) = MicroSoft Access, Oracle, SQL Server, DB2など。簡単にデータファイルを読み書きできるようにし、データを矛盾なく安全に保つ。
・正規化=テーブルを複数にわけ、個々のテーブルのリレーションシップを設定(関係づける)して、データベースの構造を整理すること。
・インデックス(index)= データの検索と並べ替えの速度を向上させる内部的な仕組み
★上記のDB設計が完了したら、ユーザーIFとなるアプリケーションを設計する。なお、このアプリケーションは基本的にCRUD(Create、Refer、Update、Delete)が必要となる。
→これらをDBMSに指示するのがSQL
・トランザクション制御
・トランザクション = DBに対する一つの意味のある操作が複数のSQLになったもの
例:Aさんの口座から-1000円して、Bさんの口座に+1000円する(←2つのUpdate命令)
途中でトラブルが発生して、Aさんの口座からひいたのにBさんの口座に入っていないようなことがおこってしまう。このようなことを防ぐため、
①DMBSにトランザクションの開始を知らせる命令
②トランザクションの終了を知らせるCOMMIT命令
③トランザクションの途中でトラブルが発生した場合に、トランザクション開始前の状態にデータベースの内容を戻すROLLBACK命令
第9章:簡単な実験7つでTCP/IPを理解する
小規模なネットワークを整備する上で必要なハードウェア。
①ネットワーク・カード(Network Interface Card, NIC) -> Eithernet
②ネットワーク・ケーブル
③ハブ(ネットワークケーブルをまとめて結ぶ)
④ルーター(インターネットに接続するための機器)
◆Ethernetの接続のしくみ
①個々のコンピュータはネットワーク・ケーブルに他のコンピュータからの電気信号が流れていないこと=ネットワークが誰からも使われていない状態であることを確認し、自分の送りたい電気信号を確認する。
②もし同時に複数のコンピュータが電気信号を送信してしまった場合には、ランダムな時間だけまって同じ信号を再送信する。
→「CSMA/CD」(Career Sense Multiple Access with Collision Detection)
③電気信号を受信したコンピュータは自分宛てであれば受け取り、そうでなければ無視する。
電気信号の宛先はMAC(Media Access Control、メーカー番号+製品番号)アドレスで指定する。ハードウェア的なアドレス。
ただし、MACアドレスはグループ化されていないので、データを送る上で時間がかかってしまう。
そこで、グループ化されているソフトウェア的な番号がある → これがIPアドレス。
IPアドレスのどこがネットワーク・アドレスでどこがホスト・アドレスかを知るためのものがサブネットマスク。
◆DHCPサーバーとは
・DHCP = Dynamic Host Configuration Protocol(動的にホストを設定するプロトコル)
DHCPサーバ内にはLAN内に割り当てられるIPアドレスの範囲とサブネット・マスクの値が記録されている。クライアント端末を起動すると、まだ他のコンピュータに割り当てられていないIPアドレスが知らされる。
*デフォルトゲートウェイ = ルーターのIPアドレス
◆ルーター
・IPアドレスの中のネットワークアドレスを調べ、それがLANの内なのか外なのかを認識し、外であればデータをインターネットに送り出す装置。
*送信データをどこに送るか示すもの = ルーティング・テーブル
*ルータを経由したデータ転送 = routing
◆DNSサーバー
・ホスト名+ドメイン名(FQDN、完全就職ドメイン) ⇄ IPアドレスの名前解決を行うサーバー
一つで全ての名前解決を行うのではなく、他のDNSサーバーに問い合わせるなどして連携している。
◆ARP(Address Resolution Protocol)
・IPアドレスをMACアドレスに変換する仕組み(データはIPアドレスを情報としてもっているが、結局データの受け取りはMACアドレスで認識されるから)
・LAN内のコンピュータに一斉に問いかけること = 「broadcast」
・なお、MACアドレスを調べる際に毎回broadcastをするのは非効率なので、「ARPキャッシュテーブル」なるものを持っている。
◆TCP/IP
・TCP = データの送信者と受信者がお互いに確認を取り合いながら、確実にデータを受け渡すためのプロトコル。handshake送信方式のひとつ。TCPではデータはpacketにわけられる。受信側でそれを復元するので、そのための情報も付加される。
・IP = IPアドレスの情報でルーティングを行い、データを転送するプロトコル。
〜〜〜〜〜〜〜〜
恐らく次で最後…!
Author And Source
この問題について(「コンピュータはなぜ動くのか」メモ③), 我々は、より多くの情報をここで見つけました https://qiita.com/amaretto_with_milk/items/a56366ef1a430f24292d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .