經過上一周的練習,你應該已經牢記了你的符號列表。現在你需要再花一周的時間,應用這些知識,在網上閱讀程式碼。這個任務初看會覺得很艱鉅。我將直接把你丟到深水區呆幾天,讓你竭盡全力去讀懂實實在在的專案裡的程式碼。這節練習的目的不是讓你讀懂,而是讓你學會下面的技能:
1. 找到你需要的 Ruby 程式碼。
2. 通讀程式碼,找到檔案。
3. 嘗試理解你找到的程式碼。
4. 以你現在的水準,你還不具備完全理解你找到的程式碼的能力,不過通過接觸這些程式碼,你可以熟悉真正的程式專案會是什麼樣子。
當你做這節習題時,你可以把自己當成是一個人類學家來到了一片陌生的大陸,你只懂得一丁點本地語言,但你需要接觸當地人並且生存下去。當然做習題不會碰到生存問題,這畢竟這不是荒野或者叢林。
你要做的事情如下:
1. 使用你的瀏覽器登錄 github.com,搜尋「ruby」。
2. 隨便找一個專案,然後點進去。
3. 點擊 Source 標籤,瀏覽目錄和檔案列表,直到你看到以 .rb 結尾的檔案
4. 從頭開始閱讀你找到的程式碼。把它的功能用筆記記下來。
5. 如果你看到一些有趣的符號或者奇怪的字串,你可以把它們記下來,日後再進行研究。
就是這樣,你的任務是使用你目前學到的東西,看自己能不能讀懂一些程式碼,看出它們的功能來。你可以先粗略地閱讀,然後再細讀。也許你還可以試試將難度比較大的部分一字不漏地朗讀出來。
現在再試試其它的幾個站:
* heroku.com
* rubygems.org
* bitbucket.org
在這些網站你可能還會看到以 .c 結尾的奇怪文件,不過你只需要看 .rb 結尾的檔案就可以了。
最後一個有趣的事情是你可以在這四個網站搜索 「ruby」以外的你感興趣的話題,例如你可以搜索「journalism(新聞)」,「cooking(下廚)」,「physics(物理)」,或者任何你感興趣的話題。你也許會找到一些對你有用的,且可以直接拿來用的程式碼。
- 笨方法更简单
- 习题 0: 准备工作
- 习题 1: 第一个程式
- 习题 2: 注释和井号
- 习题 3: 数字和数学计算
- 习题 4: 变数(variable)和命名
- 习题 5: 更多的变数和印出
- 习题 6: 字串(string)和文字
- 习题 7: 更多印出
- 习题 8: 印出,印出
- 习题 9: 印出,印出,印出
- 习题 10: 那是什么?
- 习题 11: 提问
- 习题 12: 模组 (Module)
- 习题 13: 参数、解包、参数
- 习题 14: 提示和传递
- 习题 15: 读取档案
- 习题 16: 读写档案
- 习题 17: 更多的档案操作
- 习题 18: 命名、变数、程式码、函式
- 习题 19: 函式和变数
- 习题 20: 函式和档案
- 习题 21: 函式可以传回东西
- 习题 22: 到现在你学到了哪些东西?
- 习题 23: 阅读一些程式码
- 习题 24: 更多练习
- 习题 25: 更多更多的练习
- 习题 26: 恭喜你,现在来考试了!
- 习题 27: 记住逻辑关系
- 习题 28: 布林(Boolean)表示式练习
- 习题 29: 如果(if)
- 习题 30: Else 和 If
- 习题 31: 做出决定
- 习题 32: 回圈和阵列
- 习题 33: While 回圈
- 习题 34: 存取阵列里的元素
- 习题 35: 分支 (Branches) 和函式 (Functions)
- 习题 36: 设计和测试
- 习题 37: 复习各种符号
- 习题 38: 阅读程式码
- 习题 39: 阵列的操作
- 习题 40: Hash, 可爱的 Hash
- 习题 41: 来自 Percal 25 号行星的哥顿人(Gothons)
- 习题 42: 物以类聚
- 习题 43: 你来制作一个游戏
- 习题 44: 评估你的游戏
- 习题 45: 物件、类和从属关系
- 习题 46: 一个专案骨架
- 习题 47: 自动化测试
- 习题 48: 更进阶的使用者输入
- 习题 49: 创造句子
- 习题 50: 你的第一个网站
- 习题 51: 从浏览器中取得输入
- 习题 52: 创造你的网页游戏
- 下一步
- 一个老程式设计师的建议