新聞中心

        EEPW首頁 > 嵌入式系統 > 牛人業話 > 編程做好這六點,你就是大師了

        編程做好這六點,你就是大師了

        作者:areak 時間:2013-08-07 來源:電子產品世界 收藏

          三、 添加盡可能詳盡的注釋

        本文引用地址:http://www.104case.com/article/158784.htm

          不要總覺得自己當時記憶深刻,甚至刻骨銘心、終生難忘,時間總是會無情地證明你是錯的,為你的程序添加詳盡的注釋,比如的用途、的調用關系、參數說明、功能等等都要盡可能詳細地寫明,有時候即使是寫下來,過一段時間再回頭看時還要在琢磨一陣,若是不寫,后果可想而知,別人就更沒法讀你的程序了。

          這是我為一個寫的注釋,當然每個人都有自己的寫法,我一般這樣來寫的,僅供參考哈。

          /*=============================================================================

          *
          * 函 數 名: CMD_Send()
          *
          * 參 數:??????? length_low 數據長度
          *???????????????????? ?CMD_byte 命令字節
          *???????????????????? ?CMD_parameter 命令參數
          *???????????????????? ?*data 語音數據
          * 功能描述:
          *??????????????????? ? 發送一幀語音數據
          *
          * 返 回 值: 無
          =============================================================================*/

          四、 做好底層的定義

          這里的意思是與硬件相關的程序,為了后期更好地,先做一些必要的定義,比如
        ?????????#define cWL_PIN_SDIO 0x04
          #define SDIO_is_Out P1DIR |= cWL_PIN_SDIO

          這樣以后用起來就十分的方便,就像說話一樣,使得程序十分易讀,當然凡事過猶不及,也沒必要過多地定義,只對一些經常使用的定義就好,也有的環境中,本身就已經做了非常詳盡的定義,那么就省了你的事了,但這也未必是好事,因為你要花很多時間去看,去熟悉。

          五、 合理劃分單元和函數

          尤其在程序量比較大的時候,這一點就顯得尤為重要,劃分得好不好,對于后期影響極大。合理劃分單元說得通俗點就是把每一個功能單元放在一個單獨的文件中,這樣每一個文件中的程序量就不至于太長,需要被外部調用的函數全部在頭文件中引出,劃分函數也很重要,函數劃分得好,可以節省很多程序空間,增強執行效率。這樣做的好處是極大地增強了程序的可移植性,下次再用到這個功能時,只需要修改底層的IO口就可以了,這樣久而久之,當你寫的單元足夠多的時候,寫程序就變得越來越輕松了。還有在文件的起始處最好也加一些功能說明,也就是注釋,例如:

          /*=============================================================================

          * 說 明:
          *??????????????? 本單元實現了語音輸出‘宇音天下’的功能。
          * 作 者: XXX 2011/3/3
          *  =============================================================================*/

          六、 反復修改,精益求精

          無論我們如何用心的去編寫程序,程序似乎總是有改進的余地,當你發現一個可以改進的地方,可能是一個好的算法,也可能僅僅是一個冗余的,也要不厭其煩地去重新改過,這樣日積月累,就可以不斷完善你自己的程序庫,因為當程序庫足夠充足、足夠完善的時候,寫程序就幾乎是信手拈來了。

          七、 總結

          其實以上說的幾點經驗,每一點都是在一個最根本的原則的指引之下,那就是增強程序的可讀性和可移植性。最后送大家一句話,與大家共勉“If you will,you can!!!”。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 车致| 松潘县| 恩平市| 兴业县| 赤水市| 湖州市| 侯马市| 淄博市| 福贡县| 宜兴市| 滨州市| 寿宁县| 壤塘县| 浦北县| 博兴县| 卢湾区| 海兴县| 昌吉市| 苍溪县| 南城县| 额济纳旗| 张家川| 蒙自县| 永兴县| 元江| 临清市| 治多县| 蓝山县| 格尔木市| 平阳县| 都兰县| 洪洞县| 年辖:市辖区| 宁都县| 留坝县| 久治县| 临西县| 宁明县| 清水县| 曲松县| 翼城县|