コンピュータはなぜ動くのか 第 2 版 知っておきたいハードウエア & ソフトウエアの基礎知識
コンピュータハナゼウゴクノカダイニハンシッテオキタイハードウエアアンドソフトウエアノキソチシキ
- 著者:
- 矢沢 久雄(ヤザワヒサオ)
- 出版社:
- 日経 BP
- 出版日:
- 2022年10月14日頃
- ISBN:
- 9784296001231
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
『コンピュータはなぜ動くのか』19 年ぶり、待望の改訂第 2 版!
「これからの 10 年も通用する基本」を身につけよう!
ハードウエア、ソフトウエア、データベース、ネットワーク、セキュリティというコンピュータを使いこなすうえで必要な知識をこの 1 冊で解説します。
ハードウエアの基本的な仕組み (プロセサ、メモリー、入出力) から、ソフトウエアの実際 (プログラム、アルゴリズム、データ構造、データベース、ネットワーク) とシステム構築までをカバー。これからプログラマや SE を目指す入門者から、基本をひと通り学びたい文系エンジニア、さらには、もう一度学び直したいベテランエンジニアまで、コンピュータを動かして成果を得ることの楽しさと仕組みを知りたい人に役立つ内容です。
【改訂のポイント】
今後 10 年通用するよう内容を全面的に更新。具体的には以下の通りです。
・「コンピュータを作ってみよう」では「COMET2 / CASL2」に対応。
・プログラム部分は Python での記述に一部変更。
・データベースでは MySQL に変更。
・暗号化では共通鍵暗号方式から公開鍵暗号方式に変更。
第 1 章 コンピュータの 3 大原則とは
第 2 章 コンピュータを作ってみよう
第 3 章 一度は体験してほしいアセンブラ
第 4 章 川の流れのようにプログラムは流れる
第 5 章 アルゴリズムと仲良くなる 7 つのポイント
第 6 章 データ構造と仲良くなる 7 つのポイント
第 7 章 オブジェクト指向プログラミングを語れるようになろう
第 8 章 作ればわかるデータベース
第 9 章 ネットワークコマンドでネットワークの仕組みを確認する
第 10 章 データを暗号化してみよう
第 11 章 そもそも XML って何だっけ
第 12 章 SE はコンピュータ・システム開発の現場監督
巻末付録 コンピュータの回路図
技書の森解説
プログラムを書けば動く、その「動く」の内側で何が起きているのかを、ハードウェアからソフトウェア、データベース、ネットワーク、セキュリティまで一冊で説明するのが『コンピュータはなぜ動くのか 第 2 版 知っておきたいハードウエア & ソフトウエアの基礎知識』 (矢沢久雄 著、日経 BP、2022 年 10 月刊) です。初版は 2003 年に日経 BP 社から刊行され、版元の紹介文が「19 年ぶり、待望の改訂第 2 版」と掲げるとおり、第 2 版は約 20 年分の技術の変化を反映した全面更新版にあたります。プロセサ、メモリー、入出力というハードウェアの基本的な仕組みから、プログラム、アルゴリズム、データ構造、データベース、ネットワークというソフトウェアの実際、そしてシステム構築までを、版元の言葉で「これからの 10 年も通用する基本」として整理し直した入門書です。
全 12 章と巻末の回路図、3 大原則からシステム開発の現場まで
構成は第 1 章から第 12 章と巻末付録です。第 1 章「コンピュータの 3 大原則とは」で出発点を置き、第 2 章「コンピュータを作ってみよう」と第 3 章のアセンブラ体験で、回路と命令のレベルからコンピュータの動作を追います。第 4 章はプログラムの流れ、第 5 章と第 6 章はアルゴリズムとデータ構造をそれぞれ 7 つのポイントで、第 7 章はオブジェクト指向プログラミングを扱います。第 8 章はデータベースを作りながら学び、第 9 章はネットワークコマンドで仕組みを確認し、第 10 章はデータの暗号化、第 11 章は XML、第 12 章では SE をコンピュータ・システム開発の現場監督と位置づけて締めます。巻末付録にはコンピュータの回路図が付き、国立国会図書館の書誌には索引ありと記録されています。章題に「作ってみよう」「体験してほしい」「確認する」と並ぶとおり、読むだけでなく手を動かして仕組みを確かめる姿勢が構成に表れています。
第 2 版の改訂点、CASL II、Python、MySQL、公開鍵暗号
版元が挙げる改訂のポイントは 4 つです。「コンピュータを作ってみよう」の章は COMET II と CASL II に対応し、プログラム部分は一部を Python での記述に変更、データベースは MySQL に変更、暗号化は共通鍵暗号方式から公開鍵暗号方式へ変更されました。COMET II と CASL II は情報処理技術者試験の学習用に定義された仮想計算機とそのアセンブラで、レジスタとメモリ番地を直接扱いながら命令の実行を追うのに向いた教材です。命令とデータがメモリに並ぶ様子を体験する教材としての価値は、試験制度がどう変わっても残ります。Python への変更は 2022 年時点で入門言語として広く使われ可読性が高いこと、MySQL への変更は手元で無償に試せる代表的なリレーショナルデータベースであることが背景にあると考えられます。暗号化 の題材を共通鍵から公開鍵へ移した点は、Web の暗号通信や電子署名の土台が公開鍵暗号方式にあるという 2020 年代の実情に合わせた更新で、鍵をどう共有するかという共通鍵方式の弱点を公開鍵方式がどう解くかは、仕組みを理解する題材として一段深い内容です。
抽象化の層を一度は底まで見る、動く仕組みを学ぶ理由
高級言語で書いたプログラムは、コンパイラやインタプリタを経て機械語になり、CPU がメモリから命令を一つずつ取り出して実行し、その CPU は論理回路の組み合わせで動いています。この抽象化の層があるからこそ開発者は回路を意識せずに生産的に書けるのですが、性能の問題、メモリ不足、文字化け、ネットワークの疎通不良といったトラブルは層をまたいで現れるため、下の層で何が起きているかを知らないと手詰まりになります。データがビット列としてメモリに並ぶこと、命令が順に流れること、オブジェクト指向プログラミング がデータと手続きをまとめる設計上の工夫であることを一度底まで見ておくと、上位層のふるまいの理由を推測できるようになります。本書はこの層を回路図とアセンブラから順に登っていく構成で、コンピュータの仕組みを学ぶ最初の段階の図解入門書として OS / 低レイヤー本ガイド でも出発点に置いています。
版元が対象読者として挙げるのは、これからプログラマや SE を目指す入門者、基本をひと通り学びたい文系エンジニア、もう一度学び直したいベテランエンジニアの 3 類型です。読み終えると、障害の切り分けで「どの層の問題か」を推測する語彙が手に入り、データベースや暗号化やネットワークを別々の知識ではなく一つの仕組みの部品として説明できるようになります。一方で、特定言語の文法を体系的に学びたい人や資格試験の直前対策を求める人には目的が違い、計算機科学を学部課程で修めた人には復習の位置づけに留まります。2003 年の初版が扱ってきた基本を 2022 年の道具で更新した本書は、コンピュータの全体像を最初に一冊でつかみたい人にとって、投じた時間が長く効く堅実な選択です。
言及した記事 (6 件)
この本に興味がある方におすすめ
関連する本
矢沢 久雄 の他の書籍
関連記事
OS / 低レイヤー本ガイド - コンピューターの仕組みを学ぶ技術書の選び方
OS、コンパイラー、ネットワークなど低レイヤーを学べる技術書の 4 ジャンルと、どこから始めるべきかの指針、賞味期限の見極め方を紹介します。
データベース本ガイド - SQL から設計まで学べる技術書の選び方
データベースの基礎から設計、パフォーマンスチューニングまで学べる技術書の選び方と学習順序を紹介します。
Linux 本ガイド - コマンドライン / しくみ / 性能の 3 層で選ぶ技術書
Linux を学ぶ技術書の選び方を 3 層 (コマンドラインの操作 → カーネルのしくみ → 性能と運用) で整理。新しい Linux の教科書や [試して理解] Linux のしくみなどの定番書の使い分けと、学ぶ順番を解説します。