馬不停蹄,第三章的讀書筆記。
Chapter 3 - The Basic Tools
保持工具的鋒利與契身。工具是雙手的延伸,可以放大你的才幹。
Section 14: The Power of Plain Text
Plain text 是 self-describing 的格式。用它來保存資料。
Section 15: Shell Games
GUI 的優點 WYSIWYG / 缺點 WYSIAYG。The shell is your friend.
Section 16: Power Editing
Use a single editor well.
Section 17: Source Code Control
Always use source code control.
它也同樣適用於工作以外的東西 ( 例如作業系統的配置文件 )。
Section 18: Debugging
開頭引用句就很震撼呢......
It is a painful thing
To look at your own trouble and know
That you yourself and no one else has made it
--Sophocles, Ajax
嗯。程式不會照自己所想的跑,只會照所寫的跑。所有程設師共同、永遠的痛苦......
Bug 已經發生,就別訝異地說「那不可能」。面對它吧。
第一步:Don't panic. 確保程式碼在 compiler 高警告級別下也能正常編譯成功,並搜集 bug 發生時的確實情境,讓它重現。
別歸咎於 OS、compiler。試著描述問題的來龍去脈,可能就會浮現出新觀點。根源或許是在稍遠的地方,而非眼前立即所見。確保以後的測試足夠完整,並清除其它有可能受同一個 bug 影響的地方。
Section 19: Text Manipulation
awk、sed、Tcl、Python、Perl 等都是不錯的 text manipulation language,可以用來讓事情自動化。
Section 20: Code Generators
Write code that writes code.
沒有留言:
張貼留言