自動程式碼審查 自動程式碼審查Automated code review是可以檢查原始碼是否符合規定的軟體規定可能是事先定義的規則或是目前的最佳實務 自動程式碼審查在開源軟體以及商業軟體的開發中都有用到 利用分析的方式來檢測及審查程式碼偵測其中是否有軟體錯誤或是安全問題已經是標準的開發實務進行的方式可以用人工確認也可以用自動化的方式確認隨著自動化軟體工具可以協助代码审查及檢查的過程审查工具一般會列出許多的警告程式碼違反程式標準审查工具也可以修正發現的問題可以用自動化的修正方式或是由程式設計師輔助的修正方式這是容易掌握的軟體中的一部份有助於軟體智慧的實踐這個程序常稱為linting因為Lint是最早期用在靜態程式分析的軟體 有些靜態程序分析工具可以用來協助自動程式碼審查這些工具受歡迎的程度不如人工審查但可以作的更快更有效率來源請求這些工具也可以封裝一些對底層規則的深入瞭解以及要進行形態分析需要的語意因此操作軟體的人工審查者不需要和完全人工審查者一樣有對程式及業務深入的瞭解許多集成开发环境IDE也有提供基本的自動程式碼審查機能例如Eclipse及Microsoft Visual Studio集成开发环境也有許多的plugin可以進行程式碼審查 除了靜態程序分析工具外也有工具可以分析軟體並且進行軟體視覺化英语軟體架構視覺化幫助人理解程式碼這種系統更著重在分析因為一般而言其中沒有事先設定要檢查的規則這類工具像是Imagix D英语Imagix DResharperSonarJSotoarc英语SotoarcStructureACTool可以讓分析者定義目標架構確保實際軟體的實現不會違反目標架構的限制條件