使你編程速度提高一倍的簡單技巧 1
英文原文:Simple trick that lets you code twice as fast
直接的反饋。沒錯,就是這么簡單。
大部分程序員都要反復地驗證自己的代碼。當你敲編程的速度達到極限時,唯一可做的事情就是及時獲得反饋信息。
這個技巧分兩個部分
1. 自動化測試
首先,你應該編寫測試。在編寫代碼之前,不需要全部 TTD 編寫測試,只需要測試,任何的測試。因為實際上你只你是想知道你編寫的代碼能否正確執行。
你的第一個測試應該:它是否運行?
下一個測試是:程序是否如你預期的一樣工作?
沒有自動化測試組件需要考驗你敏銳的觀察能力。數十年地比較如何寫得更簡單些,最糟糕的是,在你每次修改后,你都必須得檢查你的整個程序。良好的設計可以減少很多這方面的負擔,但是由于獨立性,仍然……努力。
我仍然記得我的每次修改就意味著要花 20 分鐘左右的時間來檢驗我的修改的代碼是否正常工作。我僅僅只記得去檢查我所修改的代碼,從沒有考慮修改會帶來的漣漪效應。
恐怖!!
自動化測試可以減少這 20 分鐘到 30 秒。
你的編程生活變得:
- 編寫代碼
- 跳到某個控制臺
- 可能性地編譯
- 運行測試組件
- 等待運行完成
- 迫不及待地查看反饋信息
- 返回繼續編程,直達測試完成 </ol>
很好,這只需要 1 分鐘的時間來確認某些代碼是否工作。我每次做測試大概 5 分鐘左右,這意味著我沒工作一個小時就浪費了 10 分鐘。
2. 自動化、再自動化測試
每一個工作日,這時間就是 1 小時 20 分鐘。
伙計們,這是不可忽略的的時間啊!
再次,我進一步使用了自動化測試組件,為什么我要手動來測試呢?我每次按 Ctrl + S 來運行測試組件,效果是否會更好?
z 確實如此,這令人多么的驚訝!
f 讓測試自動運行,你每次只需要瞥一眼運行結果,你不會被分散注意力,也不需要離開你的編輯器。
贏-贏-贏
馬上使用兩個工具來做自動化測試(我還在尋找更多的好工具)
Mocha 有一個非常棒的 -w 可選項來運行 node.js 測試,它能找到需要修改的文件并返回你每次保存的組件。
做前端開發,我使用 Live CSS Mod ,是 Chrome 的一個擴展插件,它每過 12 秒刷新一次頁面。但是它也能夠在后臺做這個工作并在修改任何文件時都能顯示你所做的修改。這意味著你將不會因長時間而失去狀態,因為這應該是令人感到鼓噪的。
現在,所有我所需要的是那些我正在使用的其它棧的工具。(Django/python and Haskell)