函數(shù)的規(guī)范

1、短小

函數(shù)的第一規(guī)則就是短?。?/p>

20行的函數(shù)是最佳的;

每個函數(shù)只做一件事,并且函數(shù)都以順序帶到下一個函數(shù),這就是函數(shù)應該到達的短小程度。

2、只做一件事

函數(shù)應該只做一件事。做好一件事。只做這一件事。

判斷函數(shù)是否只做一件事,看是否還能在拆分出一個函數(shù);

3、每個函數(shù)一個抽象層級

要確保函數(shù)只做一件事,函數(shù)中的語句都要在一個抽象級上。

自頂向下讀代碼;

4、switch語句

用抽象工廠來代替;

5、使用描述性的名稱

函數(shù)的名字正好描述了該函數(shù)所做的事;要做到見名知意;

6、函數(shù)參數(shù)

盡量避免三個參數(shù)以上;參數(shù)越多測試覆蓋所有可能的值的組合就越多;

如果參數(shù)過多就該將參數(shù)封裝成類了;

7、無副作用

還是“只做一件事”的原則;

如果該方法做了兩件事一定要在函數(shù)名中體現(xiàn),否則就會發(fā)生不可預知的錯誤;

8、分割指令與詢問


9、使用異常代替返回錯誤碼

使用異常代替錯誤碼,錯誤的處理代碼就能從主路徑代碼中分離出來。得到簡化;

抽離出try/catch代碼塊,做成函數(shù);使用異常代替錯誤碼,新的異常就可以從異常類派生出來,無需重新編譯或重新部署;

10、別重復自己

如果過多的重復代碼就應該抽取出來;

面向方面編程(Aspect Oriented Programming)、面向組件編程(Component Oriented Programming)也都是消除重復的一種策略。

總結一句:消滅重復

11、結構化編程


12、如何寫出這樣的函數(shù)

分解函數(shù)、修改名稱、消除重復


總結:

大師級程序員把系統(tǒng)當作故事來講,而不是當作程序來寫。

真正的目標在于講述系統(tǒng)的故事,編寫的函數(shù)必須干凈利落地拼裝在一起,形成一種精確清晰地語言,幫你講故事。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容