0
在Swift中,用幾個功能區分幾個功能用途的最佳方法是什麼? 例如,我有以下代碼:用同一個名字快速區分幾個功能用途
protocol SomeProtocol {
func simpleFunc() -> Bool
func simpleFunc() -> Int
func simpleFunc(type: SomeType, x: Int, y: Int) -> [SomeModel]
func simpleFunc(type: SomeType, z: String) -> [String]
}
當我將使用這些功能,這將是不明確什麼是任何此類功能的目的。我想做一些類似於默認的tableView
功能。 func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
當我選擇此功能,據我所知,它是用於didSelectRowAt
所以我做了這樣的事情:
protocol SomeProtocol {
func simpleFunc() -> Bool /* purpose1 */
func simpleFunc() -> Int /* purpose2 */
func simpleFunc(purpose3 type: SomeType, x: Int, y: Int) -> [SomeModel]
func simpleFunc(purpose4 type: SomeType, z: String) -> [String]
}
不幸的是如果函數沒有參數,這種做法是行不通的。這裏的最佳實踐是什麼?
看看[Swi英尺API指南](https://swift.org/documentation/api-design-guidelines/),引用例如_Naming_部分:_「包含避免歧義所需的所有單詞」_。 – dfri
最佳做法是避免在沒有參數的情況下對函數進行相同的命名。 – Aaron
從技術上講,您將通過函數的返回類型知道。一個返回Bool,一個返回Int。但是,正如dfri所說,您應該查看命名準則。 – JustinM