怎樣學習 Ruby

轉載自: http://about.ac/2012/04/how-to-learn-ruby.html



學給自己的忠告。

靜心讀書,遠離電腦、網絡

雖說 Ruby 是一門電腦編程語言,但是任何學習的過程都離不開“書本”。網絡上有大量電子書可以下載閱讀,條件允許的話,還是打印出來看吧,紙質書和電子書的觸感是不同的,而且對着電腦容易分心。Ruby 中有很多概念是需要記憶、理解的,這時最好拿着書離開電腦桌,找個舒服的地方精下心來認真閱讀體會;學習到語法細節時則需要在電腦上敲擊鍵盤了。

專注 Ruby,遠離 gem、Rails

隨着學習的推進,你會發現 Ruby 的世界太精彩了,有多的讓人眼花的 gem,還有各種奇怪、很酷、很 geek 的用法,這些就是 Ruby 世界的“糖衣炮彈”,在學習 Ruby 的初期一定要避免誘惑,半年之內,不要接觸任何功能強大的 gem,當然包括 Rails,專心學習 Ruby 編程語言纔是正事。

不要覺得已經掌握了所有知識,即便是 Matz 本人也說過:對於從事面向對象編程有 15 年以上(經驗)的我來說,有很多概念還是覺得很難理解。(《松本行弘的程序世界》P16 2.2.1 面向對象的歷史)

遵循 Ruby 代碼規範

Ruby 語言本身沒有嚴格限制代碼行文規範,你可以把代碼寫的像 PHP 一樣亂,也可以寫的像 Python 一樣整潔。代碼整潔、格式統一的代碼對自己、對他人都有很多的好處。目前比較被接受的 Ruby 代碼規範是 ruby-style-guide

重複造(大量的)輪子

對初學者來說,重複造輪子是最有用的方法,在製造輪子的過程中可以從零開始認識輪子的結構、材料、工藝流程、質量檢驗、不良返修等過程。這些不是看來的,是動手做出來的。

即便到了學習的中期也要對他人的代碼持懷疑態度,發揚“NIH 綜合徵”精神,提出自己的觀點,改進原有代碼或者自己造一個更好地輪子。

學習英語,看原版書

Ruby 的技術雖然更新不快,但是也不慢,如果一個新的技術出現,等出現中文翻譯,估計已經是兩三年之後的事了,那時新的已經變成舊的了。所以,不要依賴中文,要閱讀英文原版書籍、文章,一來鍛鍊了英語,二來接觸到了最新的技術。

不要沉浸在論壇中

論壇是無用的,特別是中文論壇,不要沉浸其中,實在閒來無事倒是可以用來解解悶子。如果遇到問題,第一個想到的應該是到 Stack Overflow 尋求幫助,這個社區會讓你異常欣喜。

遵循“守破離”原則

任何知識都不是一朝一夕能夠掌握的,學習過程切記三心二意、半途而廢。整個的學習過程可以分階段,參照日本合氣道的指導思想進行,即“守破離(shuhari)”。

知識的學習就像練習一門功夫一樣,需要經歷三個階段。

第一個階段“守”。再強大的功夫也有心法套路(降龍十八掌 九九八十一式),這些是初學者必須死記硬背,反覆練習的,是“重複造輪子”的最佳階段,也是整個學習過程最枯燥乏味的,如果能熬過第一階段,成爲大俠就指日可待了。

第二個階段是“破”。多年的潛心修煉,現在已經可以脫離套路去肆意發揮了,只要還在心法控制的範圍之內即可。在這個階段可以四處找高手切磋過招、指點剛入門的學徒,在潛移默化中提高自己的修爲,這也是練習內功的最佳時機。如果一切順利,基本上就是“大俠”了。

第三個階段是“離”。吸收了多家之長後就可以像張三丰一樣自創“太極”,讓他人敬仰了。但是很少有人能夠達到這一境界,在武俠之外的編程界,據說只有 C 語言的創始人 Dennis Ritchie 達到了這一階段,可見其修爲了得。


發佈了114 篇原創文章 · 獲贊 8 · 訪問量 20萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章