Swift iOS App 程式的命名習慣

開發 Swift iOS App 時,如何為變數,型別,function 命名,一直是件令人頭大的事。

由於現在 Xcode 擁有強大的自動完成功能,所以我們大可放心地使用完整的單字命名,甚至組合多個單字,讓人一眼就能猜出名稱的意思,不用擔心名字太長。

當名稱由多個單字組成時,習慣上以所謂的 Camel case 方法命名,也就是每個單字的開頭大寫,第一個單字例外,比方 resultAnswerLabel。此方法的好處在於我們容易看出名稱是由哪幾個單字組成,方便明白名稱的意思。第一個單字小寫的原因 ,則是因為習慣上只有型別名稱的開頭才大寫。( camel 的意思是駱駝,當單字的字首大寫,多個單字組合起來時,每個單字看起來就像駱駝的駝峰,十分可愛 )

然而,因個人的習慣,英文程度和想像力,每個人想的名字往往不盡相同,除非對方是你百年難得一見的知己,你們倆常常心有靈犀。不過如果你想參考的話,倒是可以學習 Apple 官方電子書 App Development with Swift 裡範例的命名方式。畢竟 Swift 是 Apple 發明的,Apple 大大說的一定是對的 !

依此書的範例,我們大致可以整理出以下規則:

  1. 當類別繼承 UIViewController 時,類別名以 ViewController 結尾,比方 QuestionViewController。
  2. 當類別繼承 UITableViewController 時,類別名以 TableViewController 結尾,比方 BookTableViewController,BookFormTableViewController。
  3. 畫面上的 UI 元件,其變數名稱結尾和型別有關,比方 UILabel 型別的 questionLabel,UISlider 型別的 rangedSlider。
  4. 畫面上的 UI 元件,如果是 outlet collection,結尾加 s,比方 letterButtons。
  5. 設定畫面元件內容的程式習慣另外定義為 fucntion,並以 update 開頭。比方 controller 型別的 function updateUI( ),updateView( ),cell 型別的 function update(with book: Book)。
  6. Array 型別的變數名加 s,比方 questions。
  7. UI 元件事件觸發的 function 名和事件有關,比方點擊按鈕觸發的 function singleAnswerButtonPressed(_ sender: UIButton)。

--

--

彼得潘的 iOS App Neverland
彼得潘的 Swift iOS App 開發問題解答集

彼得潘的iOS App程式設計入門,文組生的iOS App程式設計入門講師,彼得潘的 Swift 程式設計入門,App程式設計入門作者,http://apppeterpan.strikingly.com