その時限りでない、汎用的な知識を身に着ける方法

Uncategorized

プログラミングを勉強していて、新しいツールが次から次に出てきてそちらの勉強に費やしていると、知識や経験値が
その時限りのものになっていそうで、不安になるときはありませんか。

私はあります。

どのツールでも通用する汎用的な知識を習得できれば長く役立つのに。と。

そこで今回は、今まで自分で試してきた汎用的な知識を習得する方法について書いていこうと思います。

ツールの仕組みについて勉強する

一つのツールの基本的な操作ができるようになった後、私は次の二つを行うようにしています。

1,書籍や公式ドキュメントを見て、そのツールを深く学ぶ
2,同じ種類の別のツールを使って、比較する。

1はツールの仕組みを掘り下げ解剖していくと、他のツールでも使えるパーツを発見することがあります。

2は、ツール同士を比較することで、共通の部分とそのツール特有の部分を洗い出します。共通の部分がツールを成立させるのに不可欠な、本質的なパーツを知れることがあります。

こうして試行錯誤しながら長く使える知識をつかもうと必死になっています。

しかし汎用的な知識を勉強するのに簡単な方法があります。

コンピュータアーキテクチャについて学ぶ

それはパソコン自体のことを学ぶことです。

分野で言うと、コンピュータアーキテクチャになるかと思います。コンピュータアーキテクチャとはコンピュータの設計や思想を扱う分野です。
有名どころの本で言うと「CPUの創りかた」とか「コンピュータの構成と設計」通称ヘネパタ本」などがあります。

私もこの分野に過去挑戦して、上記二冊含めOSの本など色々手を出しました。

その結果は、「データはCPUで処理が行われるのはわかった、ただどう処理されているのかは理解できなかった」というものでした。
数学で言ったら、公式の存在は知れたが、何を入れたら何が出てくるのかまでは理解できない、というかなり浅い理解です。

「CPUの創りかた」はわかりやすいと評判の本なので、私の理解力の問題もあるでしょうが、何周かしないと理解するのは難しいと思います。

初心者にお勧めされている本を試してみても理解できなかったのですが、ある一冊の本が突破口になりました。

はじめて読む8086

その本が「はじめて読む8086」です。

プログラミング言語でマシンを動かすためには、翻訳して、マシンが理解できる0と1の信号にしなければならないのですが、
その信号についてわかりやすく書かれています。

また、PCの基本的な要素であるCPU、レジスタ、メモリ等についてもわかりやすく書かれています。

パソコンの処理がどこを通ってどのように処理されるのか基本的なことを理解できました。

コンピュータアーキテクチャについて知りたい人は、最初に読む本として最適だと思います。

よく初心者にお勧めされている「プログラムはなぜ動くのか」や「CPUの創りかた」でも難しかったという方におすすめです。

正直、コンピュータアーキテクチャの本で学んだ知識が役立ったことはまだないのですが、エラーが起きたときにとれる対策が増えるのかなと思います。

頭が痛くて咳が出た時にとりあえず風邪薬飲んでいれば治ることが大半ですが、もしそうじゃない時には人体の知識を持った医者が必要になるようなものですね。

コメント

タイトルとURLをコピーしました