我思故我在之编程规范及编程思想篇
一點點記錄我對編程的一些思考,不斷更新中。。。
1、一個好的程序應該是要做到對當前的功能要求按照高內聚,低耦合,模塊化進行編程。同時能夠對未來可能產生的新功能預留好相應的接口。并且作為嵌入式軟件,要為后期的不同平臺移植做好分層。
2、禁止無效注釋,例如:rcvDataFlag = 1;//將rcvDataFlag 值置1.這就是一個無效注釋。注釋應該體現置1的效果。例如:rcvDataFlag? = 1;接收到有效的移動協議數據,需要進一步解析。
3、if不要嵌套超過3層,一個if程序應該盡量控制在50行代碼內。盡可能地維持正常流程代碼在最外層,保持主干流程是正常核心流程。(具體看這篇文章)
4、把復雜的業務寫簡單,而不是把簡單的寫復雜了。不要在到處打標志位了。如果迫不得已打標志位一定要詳細注釋該標志位作用。全局變量的標志位是一個程序模塊化最大的阻礙。對程序的低耦合破壞最大。
5、不要用0/1/2/3/4/5這樣數字作為返回或者狀態, 應該封裝上一層宏定義。讓人能理解它的意義??梢酝ㄟ^自定義TRUE和FALSE返回值作為返回:
?? ??????????????????? #define TRUE? 0? //為什么要定義TRUE為0呢?因為正確只有一個,錯誤卻有各種原因,為后期拓展返回錯誤狀態提供支持。
?? ??????????????????? #define FALSE 1
6、命名規范化,可以根據編程語言選擇不同命名方式,也可以用組合的命名法,但是一定要做到統一。(我自己定的stm32編程的命名方法)
7、高扇入,合理的扇出。扇入指的是該函數別調用次數,次數越多,證明該函數利用率越高。扇出指的是本函數內調用其他下級函數的個數。一般控制在3-5個最合理。(相關文章)
總結
以上是生活随笔為你收集整理的我思故我在之编程规范及编程思想篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: if/ else 你真的会吗?
- 下一篇: µC/OS-II和µC/OS-III比较