跳到主要內容
AIupick

程式設計

看懂並修正一小段程式碼

先請程式設計工具解釋程式碼,一次只做一個小修改,並自己測試每一項。

適合的工具類型:程式設計

逐步說明

實作範例:一個遇到空串列就會當掉的 Python 函式

  1. 1
    絕對不要貼上密碼、API 金鑰或客戶的私人資料。

    例如

    這個函式所在的檔案裡也有一組 API 金鑰。只複製函式,絕對不要複製金鑰。

  2. 2
    說明程式碼應該做什麼,以及你看到的確切錯誤或行為。

    例如

    你輸入的內容

    這個 Python 函式應該回傳一串數字的平均值: def average(numbers):    return sum(numbers) / len(numbers) average([2, 4, 6]) 可以正常執行,但 average([]) 會中止並顯示:ZeroDivisionError: division by zero如果是空串列,它應該回傳 None。
  3. 3
    在要求修改之前,先請它解釋程式碼。

    例如

    你輸入的內容

    先解釋這個函式的每個部分在做什麼,以及為什麼空串列會出錯。先不要修改程式碼。

    範例回答,由我們撰寫。你的工具給的回答會不一樣。

    sum(numbers) 會把數字加總,len(numbers) 會計算有幾個數字。如果是空串列,兩者都是 0,而 Python 無法除以零,所以會引發 ZeroDivisionError。
  4. 4
    一次只套用一個小修改。

    例如

    你輸入的內容

    現在建議一個最小的修改,讓空串列回傳 None。

    範例回答,由我們撰寫。你的工具給的回答會不一樣。

    def average(numbers):    if not numbers:        return None    return sum(numbers) / len(numbers)
  5. 5
    自己執行程式碼和它的測試,並讀過每一行修改。

    例如

    兩種情況都自己執行一次:average([2, 4, 6]) 應該得到 4.0,average([]) 應該得到 None。讀一下新增的兩行:它們只處理空串列,沒有改動其他地方。

可複製的範本

這是一段[程式語言]程式碼:
[程式碼]
它應該[預期的行為],但實際上卻[實際的行為或錯誤訊息]。
先一步一步解釋這段程式碼在做什麼。
再建議一個可能修好它的最小修改,並說明原因。
告訴我如何測試這個修正。

要求 AI 標出不確定之處,並不會讓它的答案變正確。重要的部分仍要繼續查證。

檢查結果

  • 你了解這個修改在做什麼。
  • 程式碼可以執行,測試也在你的電腦上通過。
  • 沒有任何機密資訊交給工具。
  • 這個修改沒有弄壞程式碼的其他部分。
  • 你讀過每一行修改。

可以試試的工具

依名稱列出,不是排名。只有同類型的工具才能並列比較。

程式設計

比較這 4 個
  • Amazon Q Developer

    程式設計

    Amazon Q Developer 是 AWS 的軟體開發 AI 助理,可在程式碼編輯器、命令列和 AWS 主控台中使用;新手可以先試用免費方案,取得程式碼建議並詢問 AWS 相關問題。

    特色: Amazon Q in the AWS Management Console, Java upgrade transformation, Diagnose with Amazon Q

    已驗證的免費方案最便宜的付費方案:Pro Tier $19.00 / 月
  • Cursor

    程式設計

    Cursor 是 Anysphere 推出的 AI 程式碼編輯器和程式設計代理,以桌面應用程式、命令列工具和雲端代理的形式運作;新手可以試著在打字時取得程式碼建議,或請代理解說和修改專案。

    特色: Tab, Cloud Agents, Bugbot

    已驗證的免費方案最便宜的付費方案:Pro $20.00 / 月
  • GitHub Copilot

    程式設計

    GitHub Copilot 是 GitHub 的 AI 程式設計助理,可用於程式碼編輯器、命令列、GitHub.com、GitHub Mobile 和桌面應用程式;新手可以試著在打字時取得程式碼建議,並詢問有關程式碼庫的問題。

    特色: Copilot cloud agent, Copilot code review, Third-party coding agents (Claude and Codex)

    已驗證的免費方案最便宜的付費方案:Copilot Pro $10.00 / 月
  • JetBrains AI Assistant 是一個外掛程式,可為 JetBrains IDE 加入 AI 聊天、程式碼自動完成和程式設計代理;新手可以試著在 IntelliJ IDEA 或 PyCharm 中用它取得程式碼建議,並詢問專案相關問題。

    特色: JetBrains Air in IDEs, Junie, Claude Agent and Codex in AI Chat

    已驗證的免費方案最便宜的付費方案:AI Pro $10.00 / 月
  • Tabnine

    程式設計

    Tabnine 是適用於程式碼編輯器和終端機的 AI 程式設計助理,現由 Tricentis 擁有,目前的文件說明的是企業方案;如果你的組織提供存取權,新手可以用它進行程式碼自動完成,以及針對程式碼庫聊天。

    特色: Private installation (on-premises or VPC), Context Engine, Provenance and Attribution

    免費方案:尚未確認付費方案尚未確認
Esc
↑ ↓ 移動Enter 開啟