Amazon CodeGuru 就像 AI Code Reviewer 加效能調校顧問。
它可以幫你自動檢查程式碼問題,也可以分析正式環境中哪段程式碼最耗資源。
1. Amazon CodeGuru 是什麼?
Amazon CodeGuru 是一個由機器學習驅動的開發工具, 主要用來改善程式碼品質與應用程式效能。
它不是用來部署程式,而是用來幫你找出程式碼問題、效能瓶頸與成本浪費。
2. CodeGuru 兩大核心功能
| 功能 | 白話理解 |
|---|---|
| CodeGuru Reviewer | 幫你自動做程式碼審查,找 bug、安全漏洞、資源洩漏 |
| CodeGuru Profiler | 幫你分析程式執行效能,找出最耗 CPU、記憶體與成本的程式碼 |
3. CodeGuru Reviewer:看程式碼品質
| 項目 | 說明 |
|---|---|
| 分析時間點 | 程式碼 push、commit 或 pull request 之後 |
| 分析方式 | 靜態程式碼分析 |
| 主要用途 | 自動化 code review |
| 可以找出 | Bug、resource leak、安全漏洞、輸入驗證問題、難找的錯誤 |
| 適合場景 | 開發階段、Pull Request、程式碼審查流程 |
4. CodeGuru Profiler:看執行效能
| 項目 | 說明 |
|---|---|
| 分析時間點 | 測試環境或正式環境執行期間 |
| 分析方式 | Runtime profiling |
| 主要用途 | 找出效能瓶頸與高成本程式碼 |
| 可以找出 | CPU 過高、記憶體浪費、昂貴執行路徑、異常行為 |
| 適合場景 | 正式環境效能調校、成本優化、效能問題排查 |
5. Reviewer vs Profiler
| 比較項目 | CodeGuru Reviewer | CodeGuru Profiler |
|---|---|---|
| 看什麼 | 程式碼本身 | 程式執行狀況 |
| 發生在哪裡 | Repository / Commit / Pull Request | Runtime / Production / Pre-production |
| 主要目的 | 提高程式碼品質 | 提高效能、降低成本 |
| 常見問題 | Bug、安全漏洞、resource leak | CPU 過高、效能瓶頸、記憶體浪費 |
| 白話記法 | 幫你 review code | 幫你抓效能兇手 |
6. CodeGuru 流程圖
7. 實務理解
CodeGuru Reviewer 是在程式碼進入主線前,先幫你檢查品質。
CodeGuru Profiler 是在程式跑起來之後,幫你找出哪段程式碼拖慢系統或浪費成本。
8. 常見使用場景
| 場景 | 使用哪個功能 |
|---|---|
| 想在 Pull Request 時自動檢查程式碼 | CodeGuru Reviewer |
| 想找出潛在 bug 或安全漏洞 | CodeGuru Reviewer |
| 正式環境 CPU 使用率太高 | CodeGuru Profiler |
| 想知道哪段程式碼最耗成本 | CodeGuru Profiler |
| 想優化應用程式效能 | CodeGuru Profiler |
9. 關鍵字整理
Amazon CodeGuru CodeGuru Reviewer CodeGuru Profiler Code Review Static Code Analysis Runtime Profiling Performance Cost Optimization Security Vulnerability Resource Leak
10. 最後總結
Amazon CodeGuru 是用來改善程式碼品質與應用程式效能的服務。
CodeGuru Reviewer 幫你在開發階段檢查程式碼問題; CodeGuru Profiler 幫你在執行階段找出效能瓶頸與成本浪費。
簡單講:Reviewer 看 code,Profiler 看 runtime。
沒有留言:
張貼留言