2009年1月17日

[讀書筆記] The Pragmatic Programmer (Chapter 3)

馬不停蹄,第三章的讀書筆記。


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.

沒有留言:

張貼留言