命名的目標:在讀者腦中建立一幅關於該實體的清晰意象

好名字的兩面#

好名字不只說明「這個東西是什麼」,也暗示「這個東西不是什麼」

考慮某個名稱時問自己:

「如果有人只看到這個名字——沒看宣告、沒看文件、沒看任何使用程式碼——他能多接近地猜出它指什麼?有沒有別的名字能畫出更清晰的畫面?」

在表達力與簡潔之間取捨#

單一名稱能塞的資訊有限:

  • 超過兩三個單字就笨重
  • 挑戰是用幾個字捕捉最重要的面向

名稱也是一種抽象#

名稱是抽象的一種:它把複雜實體簡化成可被快速理解的形式。

與其他抽象一樣,最好的名字聚焦於最重要的部分,省略次要細節