読書メモ:アンダースタンディングコンピュテーション
スキルの棚卸のため、こちらも過去読んだ本について書きます。
自分のように、大学などで情報工学を専攻しなかった場合、有限オートマトンやチューリングマシンなどのトピックは、情報処理技術者試験で流しで学習する程度というのが多いのではないでしょうか?
実際に、ビジネスとしてのIT、例えば一般的な社内システムやWeb開発で必要になる知識ではないかもしれません。
しかし、この書籍の知識を深く理解していれば、その後のキャリアとして世界で活躍する高度なプログラマとしての道が開けるかもしれません。
この本では、Rubyを使って様々なオートマトンを実装することで、プログラムとは何なのか、計算機とは何なのかを実装とともに深い理論的洞察を得られる書籍となっています。
とは言ったものの、私自身は時間の関係上流し読みをした程度となってしまいました(社会人になると、プライベートで英語や他の技術調査等の優先学習事項があるのが実際のところです・・・)。
通読することで、理論的な枠組みと物理的な制限を切り分けて考えられるようになる一助になりました。
比較的時間に余裕がある学生や、Rubyで高度なプログラミングをマスターしたい場合に、「コンピュータシステムの理論と実装」と同じく是非おすすめしたい書籍です。