国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

15個編程好習慣

發布時間:2011-3-23 20:48    發布者:1770309616
關鍵詞: 編程
編者按:這是國外程序員Al katib總結的一些編程習慣。
1. 動手編碼之前,你需要對要編碼實現的解決方案有一個正式的或粗略的設計。永遠不要在沒有任何設計的前提下就開始編碼,除非所編代碼不重要。2. 優秀的代碼文檔跟編程語言知識一樣重要。在代碼源文件中,為每個主要的代碼段添加注釋,解釋代碼的基本邏輯。最好注明程序的構建和修改日期,以及修改的原因也是非常有必要的。

  3. 維護程序的各個版本同樣重要。當前有些編程工具都自帶一個版本管理工具。無論你什么時候改變自己的程序,它們都會將其保存為.bak文件。

  我的方法是為每個程序維護三個不同的版本。比如說,我有一個名為program.c的文件,這個文件同時也被其他項目組成員使用。我把這個文件復制為 program.c.old作為備份文件,并且當我修改時,我會備份另一個名為program.c.wrk的副本文件。當成功完成修改時替換 program.c.wrk文件。

  你還可以給自己的程序版本添加一個日期或一些注釋,像program260505.c或programReadFnWrking.c。

  4. 如果工程包含多個源文件,則聲稱一個README文件,注明每個源文件、數據文件、臨時文件以及日志文件(如果有的話)的作用。你還可以注明編譯和運行步驟。

  5. 有時候,你一定想知道為什么IF語句沒有得到預想的結果。可能你使用的是等號,也就是“=”,而不是條件判定符號“==”。一個比較好的辦法是用相反的順序寫條件語句。因此,你的條件語句應該如下:

  if(10==i)…因此,如果你錯誤地寫成了單個等于號,在編譯的時候也能檢查出來并報錯。

  6.使用循環和條件語句時,先把左右括號對應起來,然后再在里面寫其他語句。也就是:

代碼: 1 for(int i=0;i<10;i++)2 {4 printf(“i=%dn”,i);3 }   注:每一行開頭的數字表明寫循環代碼的順序。

  7. 避免使用幻數(magic numbers)。例如,不要寫

代碼: circleArea = 3.14 * pow(radius,2); 而要使用如下代碼:

代碼: #define PI 3.14 circleArea = PI * pow(radius,2);   
  8. 使用有意義的變量和函數名稱。例如,使用‘radius’來代替圓的半徑,而不是用‘r’來表示。同樣,函數名‘calculateArea’要比其他任何隱晦的縮寫要好得多。匆忙之下,我們也許會使用縮寫的變量名,但一開始節省時間的話,之后會浪費更多的時間,去猜測縮寫變量名代表什么。(編注:)

  9. 為后面的調試使用打印語句,這是個好習慣。但是,當完成最后代碼后,去掉這些語句,有時也是一項危險的任務。添加一個方法,用于輸出調試信息。當最終版本生成時,只要把這個方法注釋掉就行。因此,只在一個地方做修改就可以了。

  10. 代碼編寫完之后,開始優化代碼。之前聲明的一些變量,現在可能沒用了。同樣,并不依賴循環的一些聲明可以移到循環模塊之外去。扎實的編譯知識同樣會對以后的代碼優化有所幫助。

  11. 對自己的操作系統和硬件要有足夠的了解,你可以從資源占用等方面提升程序的性能。

  12. 編寫代碼時要合理使用縮進,以使代碼清晰可讀。

  13. 把項目文件放到SOURCE、HEADERS、MAKE、EXES等不同的文件夾中。

  14. 研究別人編寫的代碼。這可以讓你學習到新的編程技術,以及他們解決和你相同的任務時所使用的方法。

  15. 最后一條(但不是最不重要的一條),備份源代碼文件,這樣當硬盤出錯或相同的問題發生時,不至于前功盡棄。

  附加:補充一條,堅持使用一種命名模式。如果你打算用匈牙利命名法,那就堅持并廣泛使用,否則將適得其反。參見微軟資深工程師 Eric Lippert 的這篇文章《閱讀代碼不簡單》。

  編者后話

  編程的好習慣應不止這15條,也許您不認同上文中的某些觀點,請標出相應序號,并說明其不足之處。另外,非常歡迎大家補充分享您的好習慣。
本文地址:http://m.qingdxww.cn/thread-59577-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
youyou_zh 發表于 2011-3-25 19:47:03
受教了
孤獨小行星 發表于 2011-3-26 15:39:23
嗯  很好  我學習了!
eastljd 發表于 2011-6-24 17:31:58
受用
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 校花被黑人玩h系列| 日本xxxxxx片免费播放18| 在线a亚洲视频| 欧美亚洲日韩国码在线观看| 日本亚洲精品无码区国产电影| 亚洲无吗视频| 亚洲人成a在线网站| 色综合久久98天天综合| 日韩特黄毛片| 亚洲狠狠成人综合网| 五月天综合网| 中文字幕亚洲无线码在一区| 国产国产人免费观看在线视频| 狂躁美女BBBBBB视频| 亚洲日韩国产精品乱-久| 天堂精品| 热久久综合网| 亚洲乱码中文字幕久久| 一个人看的免费www视频| 吃奶啃奶玩乳漫画| 免费视频网站嗯啊轻点| 在线国产视频观看| 欧美特级| 午夜性色视频| 亚洲第一综合| 99视频一区| 看了n遍舍不得删的黄文| 日本福利一区二区| 日本中文字幕一区二区高清在线| 色综合一区| 视频一区二区三区| 一级做a爱过程免费观看| 富婆大保健嗷嗷叫普通话对白| 青草影院内射中出高潮-百度| 青草久久精品亚洲综合专区| 欧美日韩一区二区不卡三区| 色综合天天综合高清影视| 亚洲国产欧美在线人成aaa| 999国产高清在线精品| 麻豆AV福利AV久久AV| 用快播看黄的网站|