Jørn Ølmheim
柏拉圖的啟示#
有一句來自柏拉圖的話,特別值得所有軟體開發者銘記在心:
Beauty of style and harmony and grace and good rhythm depends on simplicity.
這句話精準地概括了我們作為軟體開發者應該追求的價值。
我們在程式碼中追求什麼#
- 可讀性(Readability)
- 可維護性(Maintainability)
- 開發速度(Speed of development)
- 難以捉摸的美感(The elusive quality of beauty)
柏拉圖告訴我們,實現上述所有品質的關鍵因素就是簡潔(simplicity)。
什麼是美麗的程式碼#
「美麗的程式碼」是一個主觀的問題。藝術背景的人可能用藝術品來類比軟體之美,科學背景的人則談論對稱性和黃金比例。但在作者的經驗中,簡潔是兩方論點的共同基礎。
去研究你所用語言中知名專家寫的開源程式碼。你會發現,被公認為美麗的程式碼都有共同特質:簡潔。
美麗程式碼的特徵:
- 無論整體系統多複雜,個別部分必須保持簡潔
- 簡潔的物件,承擔單一職責
- 包含同樣簡潔、聚焦的方法,搭配描述性的命名
- 短小的方法(5-10 行),雖然有些語言較難實現,但仍值得追求
結語#
美麗的程式碼就是簡潔的程式碼。每個部分保持簡潔的職責和簡潔的關係,這是讓系統在整個生命週期中都能維持高開發速度的方式。美源自簡潔,也在簡潔中被發現。