初めてのRuby~1章~読了
1章読了しました。
プログラムの細かい話はまだ出てきませんが、俯瞰的にRubyのことが書いてあります。
・バージョン体系
MAJOR.MINOR.TEENY(1.4.2)で表記される。
MINORは偶数が安定版、奇数が開発版
1.9では上記法則ではないので注意(2.0に備えたらしい)
・ライブラリの探し方
①専用文法はあるか
②組み込み関数はあるか
③組み込みクラスはあるか
④標準添付ライブラリはあるか
⑤標準外ライブラリはあるか
Bashでは組み込みか外部かで実行速度に大きな違いがあったが、Rubyでは実行速度にどれだけ差があるのか、慣れてきたら計測してみたい。
・コマンド
irb :対話型。ちょっとしたコマンドの確認に便利。
-rdebug :デバッガ制御。行ごとの実行などが行える。
ri :英語のリファレンスが表示される。
・メソッドの表記方法
「Stringオブジェクトのインスタンスメソッドeach_byte」= String#each_byte
「Timeクラスのクラスメソッド*now」= Time.now or Time::now
「::」ってなんだろうと思っていたら、こういう日本語の意味らしい。
・pメソッド
デバッグ用の出力。
デバッグ以外での使用は「お行儀が悪い」。
a,b = "str", "str" def a.greet puts "I am the object #{self.object_id}" end a.greet #このオブジェクトだけ使える b.greet #エラーになる
ところで、本文に
と書いてあるがなんのことだろう?
シンタックスシュガー = "同じ意味を持つけど別の書き方ができる構文のこと"
らしい。*1
つまりこんな感じの理解。
1.+ 1 #加算メソッドの引数「1」 1 + 1 #加算メソッドのシンタックスシュガー
確かに、シンタックスシュガーの方がわかりやすい。