eBay的代碼量已經比Windows+Linux更多了。從我看來,這絕不是一種恭維,而是徹徹底底的技術人員的失敗。從代碼的角度,越短的代碼,就越有力量。
Mark Twin曾經在給一個朋友的信中說道:
我親愛的朋友,如果我有更多的時間, 我就能給你寫更短的信了。
文字是這樣,代碼更是這樣。
有了面向對象的方式和一些簡單的設計模式加一些重構,代碼可以變得非常的簡單,明了,易讀,卻依然保持靈活和強大。在百姓網,我們曾經把2000行 代碼重構為250行(迷你朝歌),然后又把另外幾千行代碼重構為250行(迷你荊州)。我覺得250行代碼是一個神奇的數量,很多的功能模塊,就算用 PHP這樣并不是完全面向對象的語言,也應該控制在250行之內。我個人的編程習慣和目標是,把每個函數控制在7行代碼之內,把函數的數量控制到最小,用 最短的代碼完成功能。我個人用的簡化代碼最有效的方式,就是寫一段代碼,徹底刪掉,重寫,然后再刪掉。在如此十幾遍之后所得到的代碼,通常比第一次要好得 多。
代碼量的增加,對于我們來說不是件好事。我們用拉鋸戰的方式在功能增加的同時,把代碼量牢牢地卡在原地,并且不斷減少。我們希望有一天,網站運營的PHP代碼會被壓縮到5000行之內。
就像對于代碼的數量的追求一樣,我們追求代碼的質量,我們追求最實用的解決方案(我們是徹徹底底的實用主義者,希望用最小的代價解決問題),我們也追求網站的速度,內容的質量。。。技術人員,就應該有些技術人員的樣子。畢竟,無論做什么,都要有些追求的。。。