當前位置:編程學習大全網 - 編程語言 - 怎麽編寫代碼當預防和阻止bug

怎麽編寫代碼當預防和阻止bug

 壹、 溝通設計先行

為避免需求或業務邏輯理解的不完全或偏差, 或者設計上存在較大的缺陷, 導致後期不必要的返工, 耗費寶貴的時間和精力, 編程開發遵循的首要準則是溝通設計先行: 與需求方、業務方和工作夥伴多多溝通交流, 進行設計評審, 能夠有效地減少因為需求、業務理解偏差導致的邏輯錯誤和個人經驗不足導致的設計錯誤。 編程與交流活動的適當調節, 也非常有益於延長程序員的壽命。

軟件工程師應下決心下功夫鍛煉和提升自己的表達能力與語言溝通素養。

二、 盡可能復用

編寫和測試可復用代碼, 盡可能復用經過嚴格測試的可靠公***庫。 代碼復用、組件復用、框架復用、 接口規範復用、設計模式復用、開發架構復用、 甚至應用模板復用; 復用使得可以從 40% , 甚至 60% 快速起步, 而不是從 0% 開始。工作量的壓力小了, 很大程度上會消減因為進度壓力導致的代碼質量低下的問題。

創建壹個應用工程模板, 將妳在實際工作項目中所學習到的、所探索到的和所創造的重要知識、技術和經驗聚合到這個系統, 讓它成為妳工作中的百寶箱。

三、 做的更多

之前對參數校驗、前置條件、 結果校驗是不是做得不充分, 補上吧! 之前對錯誤和異常考慮是不是不夠周全, 補上吧 ! 之前的單元測試、 接口測試是不是基本沒怎麽做, 補上吧!

哇! 也許妳會說, 工作量增大了好多! 有時間去做這麽多工作嗎? 這就要應用到第三條法則: 做得更少。

四、 做得更少

“做得更少”有三層含義:

(1) 盡可能自動化, 減少手工操作, 凡是操作不方便的、信息需要記憶的, 就要集成到程序中自動化完成, 避免不必要的腦力消耗; 比如查看日誌排查問題, 《使用getopt解析命令行壹例》, 就編寫了壹個腳本, 能夠獲取所有應用服務器的日誌並按照內容關鍵字進行篩選展示, 而不需要手動逐個登陸應用服務器去查看日誌了, 也不需要記憶日誌地址, 做到最簡化, 還學到了新技能。 腦力應該思考最重要的事情, 尤其是判斷和決策相關;

(2) 要盡可能創造新的技術和方法, 將耗時繁瑣的工作變成輕松的工作; 比如編寫單元測試是比較“沒技術含量”的事情, 能不能編寫程序自動化生成可執行的測試用例呢? 這不就轉換成“很有技術含量”的事情了。 《Jtester+unitils+testng:DAO單元測試文件模板自動生成》 展示了壹個例子。

(3) Write Less and Do More. 《編程語言與可復用性》展示了 Python 是如何用壹行代碼來解決壹個可復用性很強的小功能的。 日常編程中, 也應多思, 提煉出問題的核心概念及交互, 用更少的代碼實現更多的功能。這是軟件開發中最具創造力的地方。

所有繁瑣的、沒有“技術含量”的活, 都可以轉化成非常需要創造力的、富有“技術含量”的挑戰。 取決於做事思路的轉換。

五、 創造“編程心流”

“心流”是做壹件事非常流暢自如且非常享受的狀態。 當處於“心流”狀態時:

(1) 感覺時間過得很快, 不知不覺;

(2) 全身心投入, 熱情創造;

(3) 專註、嫻熟自如地做事;

(4) 如果有些事情不懂, 會努力去學會它。

六、 嚴格的程序測試

嚴格的程序測試可以找出很多常見的編程錯誤, 應充分信任程序測試的作用, 充分而嚴格地測試程序。

通過嚴格的程序測試, 將使編寫代碼的信心大增, 能夠更大膽地重構, 嘗試新技術, 拓展新領域。

  • 上一篇:h5的制作工具有什麽
  • 下一篇:急急急~網絡信息檢索方法與應用 論文
  • copyright 2024編程學習大全網