天天看點

摘錄《程式員那些悲催的事兒》

http://coolshell.cn/articles/3980.html

裡面這一條很棒:

我們的代碼中有一個子產品完美地工作了很多年了,隻是代碼太亂了。我說服了我的老闆,我可以重寫這個子產品,于是我花了三個星期來重寫這個子產品。今天 ,我還記得,我的老闆站在我的後面看着我,而我在在流着鬥大的法汗珠去fix被我重寫的“超級漂亮”的那個子產品中一個接一個的bug。從那以後,我再也不重寫代碼了,除非有重大的利益。

點評:這就所謂的屠宰式程式設計。這個案例告訴我們兩個道理,1)維護代碼要用最最最保守的方法來進行。2)重構代碼前要像一個商人一樣學會計算利益。當然,ThoughtWorks的咨詢師一定會告訴你TDD,結對,極限等等方法告訴你如果實踐重構。但我想告訴你,一個程式在生産環境裡運作好幾個年能沒有問題是一件很不容易的事,那怕其中的代碼再爛,你再看不過去,你都要有一個清醒的頭腦明白這幾點,1)軟體的運作品質是遠遠大于代碼品質的,2)你的測試案例是遠遠小于生産環境的,3)軟體的完美的品質,是靠長時間的運作、測試和錯誤堆出來的,而不是某種方法論。

開始工作的時候非常注意表面上的一些東西,整潔的代碼等等。

到現在稍微覺得成熟了一些,就是不為了整潔而整潔,是為了解決問題而整潔,有些地方大可大大方方的丢爛代碼過去。

而優雅兩個字非常有主觀向,現在我的看法是:以最準确的方式解決了問題即為優雅,多一分則肥少一分則瘦。

繼續閱讀