我的程式碼會說話 第8章 英文能力的提升
第八章描述如何用英文增進程式碼的可讀性。
8.1 詞性
1.名詞
名詞是用來表示屬性的常用詞性。
複數可用來表示List、Map、陣列等各種形式資料,例如List<Book> books。
2.動詞
動詞一般用來表示方法。方法名稱包含一個動詞或是動詞加名詞形式的片語。
3.動名詞
動作可以作為屬性出現,但應以動名詞的形式來表示,例如action、configuration。
動作行為也可以作為類別或介面出現,最好以動名詞或名詞的形式出現。
4.形容詞
形容詞作為屬性來表示某種狀態。例如visible表示是否可見。
is開頭表示布林型別,setter形式set開頭。
5.代名詞
代名詞用來指定代表其他事物。
this
this是Java的關鍵字,不能夠使用。
what
當類別中需要包含與自己相同名稱物件時。例如:
public class Message
{
public int message;
}
可改為
public class Message
{
public int what;
}
other
當需要作對比,而指定代表是被比較物件,other是極佳的詞彙。
代名詞還有:that、when、where、who、which、me、you、him、self
6.介係詞、連接詞
by
by表示根據後面的條件來執行前面的動作。
for
for表示執行前面的動作是為了後面的目的。
at
at表示根據後面的條件來執行前面的動作。
and
and表示兩個條件都需要成立時,才能執行前面的動作。
or
or表示兩個條件只需要其中一個條件成立時,即可執行前面的動作。
還有with、after、before、through、as 可以使用。
8.2 時態
程式中只需要使用三種時態
簡單現在式 代表非狀態類動作
完成式 表示動作已經完成
進行式 表示動作正在進行
8.3 語法
1.受詞子句
書寫斷言方式 assertThat(number).isEqualTo(6) 比 assertEquals(6, number) 較佳。
2.過去式
表示完成
3.簡單未來式
假設要表達 UI will be updated after 3 seconds
寫成 updateUIAfter(3, TimeUnit.SECONDS) 較佳。
8.4 否定詞
1.Exception與Error等命名
例如:
InconvertibleException 表示不能轉換
FileNotExistException 表示檔案不存在
2.錯誤常數
錯誤碼常數可用否定式命名例如 INVALID_CODE
3.特殊類別
???
8.5 成對詞
例如List有add方法必定會有remove方法。
8.6 近義詞
在一個系統最好不要出現各種同義詞,防止同義詞太多導致混淆。
8.7 首碼、副檔名
1.prev/curr/next 表示順序
2.on~表示回應某個行為
3.is~/has~/need~/can~表示判定
4.do~/process~/run~/execute~/invoke~/perform~ 表示執行
5.~Wrapper表示包裹器
Wrapper最好只是臨時的名子。
6.設計模式名字作為結尾
例如 ~State表示狀態模式,~Proxy表示代理模式
7.~Listener表示事件監聽者
8.get~,set~ 表示獲取和設置某欄位值
9.to~表示轉換
8.8 縮寫
縮寫可幫助縮短名稱的長度,縮寫寫容易會導致意思不明確。
8.9 正確地用詞
1.拼寫正確
2.正確用詞
3.準確地用詞
4.明確的用詞
5.精確地用詞
留言
張貼留言