# Java & Kotlin 命名習慣(以 Kotlin 為主 前提說明: * 大駝峰式命名法:各單字第一個字母大寫 * 小駝峰式命名法:第一個單字小寫,之後的單字第一個字母大寫 ----------- 1. 專案命名:大駝峰式命名法, ```kotlin= // Example ChatRoom ``` 2. 套件(package)命名:全小寫,以組織網域(domain name) 相反順序命名,接續模組層級名稱。 ```kolin // Example Website : http://www.enoxs.com Package : com.enoxs com.enoxs.domain com.enoxs.domain.service ``` 3. 類別(class)/ 介面 (interface) 命名:大駝峰式命名法 ```kotlin= // Example HomeFragment UserViewModel ``` 4. 常數(CONTSTANT)命名:命名全大寫,名詞以底線區隔 ```kotlin= // Example const val ACTION_CAMERA_REQUEST_CODE = 100 val TAG = MainActivity::class.java.simpleName ``` 5. 變數(variable) 命名:小駝峰式命名法 ```kotlin= // Example var nickName = "waterwater" val userId = "water123" ``` 6. 列舉(enum) 命名:全大寫 ```kotlin= // Example enum class GameState() { INITIAL, START, END } ``` 7. 方法(methods) 命名:小駝峰式命名法 ```kotlin= // Example override fun onCreate() fun updateUI() fun loginFirebase() ``` 8. 註解 ```kotlin= // 區塊註解 // 通常寫在函式的上方說明函式的功能,IDE 快捷F1 可以幫助查看說明 /** * update Pic & Nickname **/ fun updateUI(uri: String, name: String) { // dosomething } // 單行註解 // 通常寫在區塊內用來說明流程狀態 // take value from editText val name = binding.nickName.text.toString() // 尾部註解 // 通常說明該行變數或方法狀態 if (login) { // login is a Boolean //dosomething } ``` 參考來源: [【如何寫乾淨的程式碼 ? 】程式設計 代碼風格 指南 | 基礎 + 9 個進階概念](https://gamma-ray-studio.blogspot.com/2020/10/9.html)