發表文章

目前顯示的是 8月, 2020的文章

Clean Code隨筆筆記整理

圖片
Ch1. Clean code 好的程式碼應具有以下特質 能通過所有測試 沒有重複的程式碼 能充分表達意思 內容很短,最少量的class、Method \ Function存在 盡量少的互相依賴關係 有意義的命名,應該要光看遍數名就能懂這個變數的存在用意 Ch2. 有意義的命名 請讓命名能夠展現他的意圖。 不要用一些自己才知道是什麼意思的方式來命名: 取名不應太過相似,要有明確區別 reports report_list the_reports 都是複數的報告,請問誰是誰 使用一些Searchable,可被IDE搜尋的到的名稱(不要跟撞名或前面掛一堆一樣的前綴增加搜尋難度或演殘選錯的機會) Class和Instance不要同名 用m來代表class的member前綴不是很必要,可以直接用this 避免想到甚麼就打甚麼,可以的話明確定義。ex: for(int i = 0) <=可以的話就不要用i了,告訴他 i是甚麼吧 變數、class、object應該使用「名詞」或名詞片語來命名 Function應該使用「動詞」或動詞片語來命名 取名時盡量避免雙關。ex : Add就有 數學加法 和 加上、添上的意思。 像後者的話我們可以取名為append或extend 通常看你code的都會是工程師,取名以工程師看得懂為主,不需要刻意取得太過艱深。 如果日常單子不足以應付取名,再以專案需求領域的專業術語單字來取名。 Ch3. Function Function內容要盡量輕量短小為好 一個Function只做一件事,也只做好一件事 一個Function只作一個層級的事。抽象層級: https://www.itread01.com/content/1520062710.html (看起來跟作用範圍有關) ex: getHtml();//高層級        String pagePathName = PathParser.render(pagePath)  //中層級        .append("\n")  //低層級 「由上至下閱讀原則」,由上層層級開始往下層level編寫 最好的參數類型就是沒有參數 如果一個function需要到兩個以上參數,可以考慮把參數包成class來傳給function Ch4. 註解 有益的註解;對意圖做解釋 寫//TOD