プロを目指す人のためのRuby入門[改訂2版]を読んでの感想
良かったところ
説明が丁寧
まず、本書のイントロダクションにも書いてあったのですが、まったくプログラムを書いたことのない完全なプログミング初心者には少し難易度が高い印象でした。
ですが、サンプルコードがたくさん書かれているのでわかりやすかったです。
基礎から応用まで
中級者〜上級者用ではあるのですが、基礎を理解できる章からそれを使った応用の章までと網羅されていました。
例題とリファクタリング作業
章ごとに例題があり、動いた後にどのようにリファクタリングできるかを説明してあります。シンプルでわかりやすい構文での書き方を学べます。
学んだこと
プログラマの三代美徳は「怠惰・短気・傲慢」
基本構文について
- メソッドの戻り値の指定にreturnは使わない。returnはメソッドを途中で脱出する際に使われることが多く最後に評価された式がメソッドの戻り値になる。
- エイリアスメソッドが多くある。
- メソッド定義も式になっている。メソッド名をシンボルとして返す。
テストを自動化する
- Minitestというテストを自動化するためにはテスト用のフレームワークを利用する
正規表現
- パターンを指定して文字列を効率よく検索・置換するためのミニ言語
- 構文や特殊な文字を組み合わせると複雑な条件を持つ検索パターンを簡潔に定義することができる
class
- オブジェクトの設計図となるもの。
- クラスは属性とメソッドを持ち、そのクラスを基にして複数のインスタンス(オブジェクト)を生成することができきる。
module
- クラスに似ているが、インスタンスの生成や継承ができない。
- クラス外で定義したmoduleはincludeするとクラス内で呼び出せるようになる。
module Book
def book?
true
end
end
class Pen
include Book
end
Pen = pen.new
p pen.book?
#=> true
難しかったこと
- Rubyのコードは言語としての事前知識が必要だなと感じました。
- 例題はありますが、言語の特性を活かした書き方を自分で理解して構文に慣れる必要があります。
- 一周では記載の内容を一度では十分に理解できなかったので、再度復習することが大事に感じました。