# Clean Code 命名篇: 1. 檢查code勁量不要出現數字 ex: list[0] = 1 勁量用有意義的變數取代 magic number!! 2. 避免變數命名過於相似,無法區分 ex: memberInfo, memberData 3. 盡量用有意義的名詞作為變數,即使是縮寫也應該保留至看得懂的部分 ex: YMD = year month day ( X ) 4. 長命名勝過短命名,盡量讓程式是可搜尋的 ,盡量不要在不同的地方使用相同的命名,意義卻不一樣 ex: 不同檔案指的article 會同時指會員文章和預測文章

取得資料相關的func應該以get作為開頭
修改應以set
bool相關以is開頭 5. 要多載construct時應以靜態方法來取代多載construct
ex: var member = new Member(“Shion”) => var member = Member.AddMemberWithName(“Shion”) 6. 一概念使用一種詞 ex: 如同樣都是儲存的動作不要有的地方用Add 有的地方用 Create 7. 避免func動作混淆 ex: Add是將數字相加的func 如今天有需要做新增的動作則避免在使用Add相關命名 應命名為 insert等等 函式篇: 1. 如需使用不同物件但概念相同的func了話,建議使用interface 實作各個物件,並用interface實作共同func
ex: 會員的計算錢和員工的計算錢,建議共同實作需計算錢的interface
 2. Func 的參數盡量為3個以內,如超過3個則應該建立資料結構做為參數傳入
 3. 如是轉換型別的func 盡量以return 新型別為主,避免直接更動input參數
ex: int AddMoney(int money) 而非 void AddMoney(int* money)
 4. 盡量避免傳入bool作為func的 input,應該分開許成2個func
ex: Render(bool isPNG) => RenderPNG(), RenderJPG()