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 行),雖然有些語言較難實現,但仍值得追求

結語#

美麗的程式碼就是簡潔的程式碼。每個部分保持簡潔的職責和簡潔的關係,這是讓系統在整個生命週期中都能維持高開發速度的方式。美源自簡潔,也在簡潔中被發現。