---
# System prepended metadata

title: 命名習慣
tags: [Basics]

---

# 命名習慣

### 資料變數命名
* Camel-Case（駝峰式）命名方法 
* 變數的命名請注意時態、詞性、單複數
* 型別為 function 時
    * reactive function: 請以 on 開頭（onClick, onChange, onToggle ...）
    * 其他不一定
* Class 類型一律使用 pascal-case（Member, Customer...）
* 自定義常數一律「全大寫」（FORM_NAME, ...）
* 取名盡量以「資料本身」為主
    *  比如：program 底下的 schedules 只 filter 出 type 為 PERFORMANCE 的資料，就應該命名為「programPerformanceSchedules」
    *  可依據實際使用的 domain/context 來縮短其長度
* 使用單引號`''`，除非是 json 才會用雙引號`""` **(eslint 規則)**

### 資料夾命名
架構請參照 [專案架構紀錄](/Ym9E8jO4TtStz3jLFdmQcQ)
* module/library
    * kebab-case (全小寫+dash)
* React component / db model
    * pascal-case
* helper
    * camel-case

###### tags: `Basics`