プロを目指す人のためのRuby入門[改訂2版]: 読書感想

本記事では『プロを目指す人のためのRuby入門 改訂2版 言語仕様からテスト駆動開発・デバッグ技法まで』という本について感想を共有したいと思います。

結論

この書籍はRubyに関するものです。
多くのメソッドや技術に関する情報を網羅しています。
著者は「現場で使える知識・技術」という点に重きを置いており、積極的に使用されることが少ない、あるいは推奨されないメソッドや技術についても多く触れられています。
また、Rubyの過去のバージョンと現在のバージョンの違いや進化についての前後比較が多く取り上げられています。
これらは読者にとってわかりやすい要素として機能する一方で、初学者には少し難しい部分でもあります。
しかし、全体的には初学者のための入門書として非常にわかりやすく、勉強になったと感じています。 最後に、この書籍の内容を理解するためには、実際にコードを書きながら学習することを強く推奨します。

本書の良かったところ

  1. 他言語との比較: Rubyの特性や動作を理解する上で非常に役立つのが、他の言語との比較です。本書では「他の言語ではこういうことが多いが、Rubyではこうなる」という形で多数の例が示されており、これが非常に学びやすいと感じました。

  2. コラムの豊富さ: 本書のコラムには「現場での知見」が豊富に詰まっており、単なる言語の入門書を超えた情報が得られたと感じています。特に現場での開発に即しての知識やヒントは、初心者の自分はもちろん、中級者の読者にとって非常に価値があるのかなと思いました。

  3. 読みやすさ: 教科書のような印象で、抽象的な言い回しや不必要な詩的表現が排除されていて、非常に読みやすかったです。

  4. 難易度・学習スタイルの示唆: 「ここからはかなり難しい」といった難易度の注意喚起も本書内でしてくれます。あまり理解できない場合は、頭にインデックスを引いていくイメージの学習スタイルでOKと、背中も押してくれるので、つまづいても諦めず進められると思います。

本書の難しかったところ

  1. 情報量の多さ: とにかく情報量が多いです。特に、「積極的に使わない方が良い」と明記されているメソッドや技術も多く紹介されています。初学者にとっては、これらの情報量が多く、どこまでを深く理解すべきか判断するのが難しい。

  2. バージョン比較の混乱: Rubyの以前の仕様と現在の仕様の比較が多いです。この前後比較はわかりやすくするためのものではありますが、初心者にとってはどちらの情報も「新しい情報」のため、比較されることでかえって混乱するところも出てくると思います。

  3. 手を動かす必要がある: 本書に示されているコードを実際に自分で書きながら進めないと、内容の理解が難しいです。隙間時間にパッとみて学ぶというより、しっかり時間をとってPCに向かって勉強する時間と環境を確保する必要があると思います。

  4. 復習が必要: 前章で学んだことを次章で使うということも多いです。情報量も圧倒的なので、コツコツ復讐をしていかないとどんどんよくわからなくなっていくと思います。例えば自分はNotionに学習した内容をまとめて、復讐をしていました。

学んだこと

本書を通じて、Rubyの多くの特性や技法を学ぶことができました。以下に学んだトピックの一部を挙げます。

  • 基本的な構文や文法、データ型の理解(例:nil も偽、if修飾子、Numericクラスなど)
  • Rubyのテスティングフレームワーク「Minitest」の基本
  • 配列やハッシュを効果的に扱う方法
  • 正規表現の基本とその活用
  • クラスやモジュールの定義、継承、メソッドのオーバーライドなどオブジェクト指向の基本
  • Ruby3.0以降から使えるパターンマッチの利用方法

まとめ

『プロを目指す人のためのRuby入門 改訂2版 言語仕様からテスト駆動開発・デバッグ技法まで』Rubyの深い理解を目指す初学者に、実用的な知識を提供します。実用的なあまり、初学者の自分にとっては難しい内容も多くありましたが、おすすめできる一冊です。