在醫療軟體中,避免過度縮寫。calcTemp() 不如 calculateTemperature() 來得安全。
變數與類別名稱應反映醫療領域的實際意義,而非單純的技術術語。
涉及物理量(如時間、溫度、電壓)的變數,必須在名稱後綴標示單位。這能極大降低單位換算錯誤導致的潛在風險。
規範要求:名稱必須是名詞或名詞片語,清楚說明其職責。介面不需加 I 前綴(Kotlin 慣例)。
SyncKit 範例:
class TemperatureSensorManager (優)
class TempMgr (劣:過度縮寫)
interface CalibrationCallback (優)
規範要求:必須以動詞開頭,清楚描述行為。如果是布林值回傳的函式,應以 is, has, can 開頭。
SyncKit 範例:
fun initializeCamera()
fun isDeviceCalibrated(): Boolean
fun calculateSkinTemperature()
規範要求:避免使用單一字母的變數(如 i, j),除非是在極短的迴圈內部。 (關鍵) 物理量必須帶有單位後綴。
SyncKit 範例:
val timeoutDelayMillis: Long = 5000L (優:標示了毫秒)
val timeout: Long = 5000L (劣:不知單位是秒還是毫秒)
var ambientTemperatureCelsius: Double (優)
val isCameraReady: Boolean
規範要求:僅適用於 const val 或沒有自訂 get() 的伴生物件(companion object)屬性。
SyncKit 範例:
const val MAX_RETRY_COUNT = 3
const val CALIBRATION_DEFAULT_OFFSET_CELSIUS = 1.5
SyncKit 範例:
private val _cameraStatus = MutableStateFlow(CameraState.IDLE)
val cameraStatus: StateFlow<CameraState> = _cameraStatus
XML Views (如果還有使用):使用小寫加上底線,前綴為元件類型(例如:tv_temperature_display, btn_start_scan)。但在 Kotlin 程式碼中存取時,應轉換為 camelCase。
Jetpack Compose (建議做法):
Composable 函式必須使用大寫駝峰式(PascalCase),且必須是名詞。
@Composable fun TemperatureDisplayCard(tempCelsius: Double)
| Bad | Result | Note |
|---|---|---|
| Temp | 禁用 | 應使用 Temperature |
| Cal | 禁用 | 應使用 Calibration |
| IR | 允許 | Infrared |
| ESD | 允許 | Electrostatic Discharge |