[英]If condition naming convention
我有一個布爾函數來檢查 scandata 鍵是否有效。 我將其命名為:
areScandataKeysValid()
對於命名約定,它應該命名為 isScandataDataKeysValid() 還是像我上面所做的那樣?。 在 Clean Code book 中,我只看到了帶有is版本的示例。 所以,我很困惑哪個有意義? 從語法上講,“是”是肯定的。
isName()
約定是 JavaBeans 標准的一部分,適用於布爾值屬性。
如果您的 API 不需要與 JavaBeans 兼容,則可以忽略該約定。
如果您檢查掃描鍵的方法不打算用作“屬性”的 getter,則isName()
約定不適用。
由於語法上的不協調,我同意您更喜歡areScandataKeysValid
不是isScandataKeysValid
。 還有其他替代方案需要考慮; 例如
hasValidScandataKeys
,或validateScandataKeys
或checkScandataKeys
用於(通常)拋出異常以指示無效的方法。我不知道任何有利於上述任何一項的記錄約定(即樣式指南)。 (沒有人說“良好的語法”是必不可少的。)
底線:您的選擇。
我認為“是”或“是”是多余的。 最重要的是謂詞函數有一個形容詞作為最后一個詞。 因此,我將方法命名為scanDataKeysValid ,或者如果從類的上下文中可以清楚地看到,則簡單地命名為 keysValid 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.