1. 程式人生 > 其它 >閱讀筆記:程式設計師修煉之道3

閱讀筆記:程式設計師修煉之道3

  軟體的熵,文章引用物理學的熵,某個系統無序的總量,熱力學定律保證了宇宙中的熵傾向於最大化,提出了軟體的熵。當軟體中無序增長時,程式設計師們稱之為“軟體腐爛”。

  有許多因素可以促生軟體腐爛其中最重要的一個似乎是開發項時的心理(或文化)即使你的團隊只有你一個人、你開發專案時的心理也可能是非常微妙的事情,儘管制定了最好的計劃,擁有最好的開發者,專案在共生命期中仍叮能遭遇毀滅和衰敗﹒而另外有一些項臼,儘管遇到巨大的困難和接連而來的挫折.卻成功地;嶽敗自然的無序傾向.設法取得了相當好的結果。

  文中提出了“破窗戶理論”Don't Live with Broken Windows不要容忍破窗戶。扇破窗戶,只要有那麼—段時間不修理,就會漸漸給建築的居民帶來一種廢棄感——一種職權部門不關心這座建築的感覺於是又一扇窗戶破了人們開始亂扔垃圾。出現了亂塗亂畫嚴重的結構損壞開始了在相對較應的一段時間裡、建築就被損毀得超出了業主願意修理的程度,而廢棄感變成了現實。

  不要留著“破窗戶”(低劣的設計,錯誤決策、或是糟糕的程式碼)不修。發現一個就修一個如果沒有足夠的時間進行適當的修理、就用木板把它釘起來或許你可以把出問題的程式碼放入註釋( comment out ),或是顯示“未實現”訊息、或是用虛設的資料(dummy data )加以替代,採取某種行動防止進一步的損壞,並說明情勢處在你的控制之下。

  我們看到過整潔、執行良好的系統,一旦窗戶開始破裂,就相當迅速地惡化。還有其他一些因素能夠促生軟體腐爛,我們將在別處探討它們,但與其他任何因素相比,置之不理都會更快地加速腐爛的程序。