程式設計師需要知道的97件事情之 ------- 簡單就是美
原連結:oreilly的程式設計師需要知道的97件事http://programmer.97things.oreilly.com/wiki /index.php/Contributions_Appearing_in_the_Book
[size=medium]下面是一句名言,我認為理解它,銘記在心,對於軟體開發者有很好的幫助:
風格之美、和諧、優雅和優美的節奏全在於簡單。 --柏拉圖
我認為這一句話總結了我們軟體開發者熱切期望的價值。
下面描述了我們程式碼所努力到達的目標:
1. 可讀性強 2。易於維護 3。 快速開發 4。 良好的質量
柏拉圖告訴我們能達到這些質量要求就是簡單。
什麼是優美的程式碼? 這可能是一個非常主觀的問題。對於美麗的理解依賴於每個人的背景。正如我們對於很多事物的立即都依賴我們自身的背景。藝術的教育背景的對於美麗的理解可能和計算機背景的差距就非常大。主修文科在軟體優美方面趨向於比較軟體和藝術工作,而計算機專業更加趨向討論它的均衡性和黃金分割比之類,試著讓本質接近公式之類的東西。依照我的經驗,簡單是唯一能夠兩邊都符合眾多引數的基礎。
回想以前那些你學習過的程式碼。如果你沒有花大量時間去學習他人的程式碼,那請停止現在手中正在學習的程式碼,並去尋找一些優秀的開原始碼來學習。我說的是真的! 搜尋一些自己母語的一些知名技術專家所寫的程式碼,然後再去學習它!
你理解了?很好,我們在哪兒?我現在找出了那些程式碼中和我理解相似的地方,而且我認為優美有很多共性,最主要的就是簡單,我發現無論系統從整體上來是多麼的複雜,那些獨立的模組都保持著簡單的原則。簡單的物件符合單一責任原則,可以專注於函式的命名。有些人認為5到10行的簡短函式式極限,但是有些程式語言很難做到這點,但是,我仍然認為達到如此簡潔是逞心如意的目標。
優美程式碼的底線就是簡單的程式碼。每個獨立的部分儘量保持簡單,和其他模組之間的關係儘量簡單,負責簡單的責任。讓程式碼簡單,方便測試,保持系統在更高的系統吞吐量的開發速度,這也是讓我們系統更加易於維護的一個途徑。[/size]