大公司是如何保證代碼質量的


  概述:本文主要介紹保證代碼質量的手段和流程


  代碼質量是公司賴以生存的土壤。產品質量是紅線,任何時候都不能逾越。目前代碼質量管理的流程中,大部分借助工具實現,可靠性、自動化程度較高。

一、代碼質量的四個方面

  1. 意識培養 + 成文的規范保證

  新員工入職,會進行詳盡的培訓,主要包含以下內容:

    • 代碼整潔之道
    • 編程最佳實踐
    • 團隊自己成文的編碼規范(類似開發者手冊),涵蓋命名、圈復雜度、單元測試和覆蓋率等指標性要求

  2. 強大的 CI 守護系統

  CI(Continuous integration,持續集成)在企業級開發中扮演着非常重要的角色。所謂 CI,簡單的理解就是:我們每次提交代碼時,都會做各種各樣的檢查和測試以保證質量(CI 防護網),通過之后才有可能將代碼集成到代碼庫的主干上去。由於這個過程很頻繁,所以叫做持續集成。現在還發展出了 CD(持續部署)。

  實際工作流程如下:

  1. 自查語法,並在本地執行各種檢查。包括但不限於圈復雜度、PCLint、安全分析、單元測試、代碼覆蓋率等等。
  2. 本地檢查通過后,再推代碼入庫。此時會觸發 CI 防護。CI 自動合並代碼,將各個庫的代碼放到同一目錄下(或者通過軟連接來實現),然后編譯。編譯之后做靜態檢查。如果不能通過,則返回至提交者。

  分層多維度CI:每次提交都會進行 CI 防護(Verify CI),每天凌晨執行 Daily CI。Daily CI 比 Verify CI 更加全面,Verify CI 通常是做增量檢查,Daily CI 則是全量檢查。

  3. 嚴格的 code review

  接上述流程,如果 CI 檢查通過,流程走到代碼審查。代碼審查通常由 team leader 或骨干成員執行,如通過審查,則提交至主干,如未通過,則返回提交者繼續修改。

  4. 強大的度量系統

  每人每月的代碼量,譬如增刪多少行,凈增多少行,都有詳細報表。CI 通過率也會有詳細統計。

 

二、整體流程圖


 

補充資料

1. 圈復雜度和代碼質量優化

2. PCLint 入門

3. 代碼度量工具——SourceMonitor的學習和使用

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM