寫最少的程式碼,避免給自己找麻煩

發表於2012-07-09

英文原文:Write Less Code ,編譯:外刊IT評論

軟體開發的一個最基本的事實是:我們必須要寫程式碼,但對於這樣的一個事實的最大一個誤解是:我們的工作就是寫程式碼。作為軟體程式設計師的最初幾年,我一直被這樣的思想所迷惑,寫程式碼是一種很強的事,是一種超能力,我們喜歡這種創造東西、成就東西的感覺。然而,多年之後,我終於明白,事情不是這樣的。事情的真相是:程式設計師要乾的活是儘量讓軟體的程式碼最少。

不要誤解,我指的不是像code golf那樣壓縮程式碼、節省字元——這樣只會導致我們寫出的程式碼無法閱讀和維護。如果你能認識到這樣的事實:我們大部分的時間都消耗在維護自己寫的可怕的程式碼上,你就會發現,讓程式碼最少、少給自己找麻煩,這無疑就會變成一個相當有創意的好思想。

為什麼?

你可以檢視一下,看看你用的工具,看看你用的框架。所有你做的,所有這些你使用的工具,都是用來減少程式碼量的。這些工具能減少犯錯誤的機會,把開發過程中能導致犯錯的因素隔離開。

所以,為什麼我們應該讓程式碼儘量少?我承認,我之前說我們的工作是寫最少的程式碼,這是撒了個小謊。我們真正的工作是思考,我們的工作是思考手頭的問題,設計一個精彩的解決方案,最後把這個方案轉變成軟體。創造軟體過程中的一個副產物就是我們需要寫出這些程式碼。

寫最少的程式碼,避免給自己找麻煩

程式碼是副產物

程式碼並不是你想象的那麼重要。我們喜歡用各種理由說明程式碼很重要:因為開始寫程式碼就意味著我們開始工作,把方案轉化成軟體,看起來就像是寫程式碼是過程同時也是目的。我們談論開發工具,我們談論語言選擇,我們談論開發環境。我是這樣,你也是,大家都這樣。享受這種敲擊鍵盤的手藝似乎無可厚非。可問題在於,我們需要多方面看問題。程式碼是精彩的,但它也是敵人,它需要你花時間去寫,它很脆弱,它可能晦澀難懂,不是那麼健壯。

這就是為什麼我一直堅守“寫最少的程式碼”的原因。不論何時當我感到有什麼東西比它應該有的體積要大或應該有的情況更復雜,我就會說“寫最少的程式碼”。每次當我寫了太多的程式碼,使得很難維護時,我就重構,整理,所有的時候我都銘記著“寫最少的程式碼”。

我不得不提到一點,有時候我們沒有辦法避免寫出一大堆的程式碼,如果做不到精簡,請保持清晰。寫最少的程式碼就是寫整潔的程式碼(《程式碼整潔之道》)。寫最少的程式碼是為了寫出整潔的程式碼。當你對要寫的程式碼精打細算時,你的程式碼就自然變的很清晰。

那麼,我們的啟示是什麼?我想這最重要的啟示是,程式碼只是副產物,我們在開發過程中不可避免的東西。所以,多思考,多重構,刪除老舊的程式碼,用更新更少的程式碼替換,為你自己的好,今天就開始吧。

相關文章