在類名的小寫版本的方法中命名變量的方式是否很差?將方法的參數變量名稱設置爲Ruby中數據類型的名稱的不良做法?
在下面的情況:string.class
==>String
def title=(string)
@title = string.split(' ').map.with_index do |word, i|
i == 0 ? word.capitalize : title_form(word)
end.join(' ')
end
在類名的小寫版本的方法中命名變量的方式是否很差?將方法的參數變量名稱設置爲Ruby中數據類型的名稱的不良做法?
在下面的情況:string.class
==>String
def title=(string)
@title = string.split(' ').map.with_index do |word, i|
i == 0 ? word.capitalize : title_form(word)
end.join(' ')
end
這是不良的做法,因爲它通常不是很描述。另外,由於Ruby實際上並不關心你通過了string
,它可能會引起誤解。
取決於。您希望儘可能使用名稱儘可能接近問題域名。
在你的情況下,一個更合適的參數名稱將是uncapitalized_title
,raw_title
,unformatted_title
,簡單地title
或類似的東西。另一方面,如果您正在編寫延伸String
的gem或使用通用字符串做某些事情,那麼string
可能就是正確的名稱。
感謝您的洞察! –
@DavidSawatske,yw。命名事物是編程中最難的兩件事之一。另一個是緩存驗證和錯誤。 XD – ndn