必備工具
irb
查祖先
1.9.3-p545 :023 > String.ancestors
=> [String, Comparable, Object, Kernel, BasicObject]
String的前面有四個(gè)上級
過濾方法
Ruby的方法非常多笙瑟,以至于不得不用grep了恃逻。
1.9.3-p545 :049 > [].methods.grep /^me/
=> [:member?, :methods, :method]
查方法來源
1.9.3-p545 :018 > {}.method :select
=> #<Method: Hash#select>
1.9.3-p545 :019 > {}.method :reduce
=> #<Method: Hash(Enumerable)#reduce>
method方法可以實(shí)現(xiàn)沿彭。
文檔
如果找明確的方法,可以用ri蔑舞,方便快捷。
ri String.sub
對象模型
各種對象語言的原理是類似的,但是內(nèi)部實(shí)現(xiàn)模型是不一樣的蜘腌。Ruby用起來簡單必盖,內(nèi)部很復(fù)雜的拌牲。
當(dāng)你感覺Ruby好用的時(shí)候,其實(shí)應(yīng)該感謝Matz的工作歌粥。
Kernel模塊是核心塌忽,很多重要的方法都在里面。推薦看《Ruby元編程》失驶,書中有詳細(xì)介紹土居。