← 新聞追蹤

接手一個別人留下的老專案,程式碼一行都看不懂:Cursor 實測一週,我改程式的方式變了

來源:業州愚公 | 2026-10-03 01:39:16

作者:業州愚公

業州愚公接手了一個由朋友留下的老專案,該專案包含兩萬多行的Python程式碼,變數名全是縮寫且沒有註解,讓他完全看不懂。業州愚公決定使用AI工具Cursor來幫助他理解和修改這個專案。通過使用Cursor,業州愚公可以讓AI先讀懂整個專案,然後再一步一步地安全地修改程式碼。這次的實測使業州愚公的修改方式發生了變化,他不再需要為了看不懂的程式碼而推辭。業州愚公的經歷表明,AI工具可以有效地幫助開發者接手和修改複雜的老專案。

編輯評論 / Editor's Note

開發人員在接手舊專案時,常常會面臨到難以理解程式碼的挑戰,這種情況可能會浪費大量時間和資源。透過AI技術的輔助,可以更快速地理解程式碼結構和邏輯,從而提高開發效率和降低錯誤風險。這種方法不僅可以幫助開發人員更好地掌握舊專案,也可以提升整體的開發質量和效率。

菜鳥之友系列:《AI 工具實操與提示詞》・工具篇作者:業州愚公

朋友丟給我一個他寫了三年的 Python 專案,說:「幫我加個匯出報表的功能就行。」我打開資料夾,四十多個檔案、兩萬多行程式碼,變數名全是縮寫,沒有半行註解。以前遇到這種場面,我的做法只有一種:跟朋友說最近太忙。

這次我沒有躲。我花了幾天,把一個叫 Cursor 的 AI 程式碼編輯器當成主力工具,把那個功能做出來了。這篇文章不談理論,只講一個非科班出身的人,怎麼用 Cursor 看懂别人的程式碼、再安全地動它。所有介面細節都以官方最新版本為準。

一、Cursor 是什麼:不是「編輯器加個外掛」那麼簡單

很多人第一反應是:我編輯器裡已經裝了 AI 補全套件,還要 Cursor 幹嘛?

差別在於「它知道多少」。外掛式的 AI 助手,每次只看到你當前打開的檔案,就像一個顧問只能透過門縫看你的專案。而 Cursor 是一個專門為 AI 重做的程式碼編輯器(介面長得跟 VS Code 很像,很多習慣可以直接帶過來),它可以把整個專案建立索引——你問「報表功能的資料是從哪張表讀的」,它能跨著十幾個檔案去回答,而不是只盯著你眼前這一頁。

對比項目 傳統編輯器+AI 外掛 Cursor
AI 能看到的範圍主要是當前檔案整個專案(建立索引後)
改程式碼的方式你貼問題、複製答案回來直接在編輯器裡生成並套用修改
對新手的意義能問單點問題能跟著它讀懂整個專案的結構
上手成本低,但能力受限需要適應一兩天,回報大

一句話總結:外掛是「查字典」,Cursor 更像「請了一個坐你旁邊的同事」。

二、裝好之後,先做這三件事

Cursor 到官網下載安裝即可,有免費方案,用量與付費細節以官方最新版本為準。裝完別急著寫程式,先做三件事,效率差很多。

第一件:登入並打開你的專案資料夾。 用選單裡的 Open Folder 打開整個專案根目錄,而不是單開一個檔案。它建立索引需要一點時間,專案越大等越久,這一步值得等。

第二件:找到 AI 對話面板。 側邊欄有 Chat 入口(快捷鍵一般是 Ctrl+L 或 Cmd+L),這是你接下來最常用的地方。第一次打開時建議在設定裡找一下 Privacy Mode(隱私模式)的選項,介意程式碼被用於訓練的話把它打開,具體策略以官方說明為準。

隱私這件事值得多說一句:公司的、客戶的程式碼丟給任何雲端 AI 之前,先確認你有没有權限這麼做。免費方案與付費方案在資料處理上的差異,以官方最新條款為準,別憑印象。

第三件:寫一份專案規則。 Cursor 支援在專案裡放一個規則檔(早期叫 .cursorrules,新版整合進 Rules 設定,以官方最新版本為準),用大白話告訴它這個專案的規矩。我給朋友的專案寫了三行:「回覆用繁體中文」「改動前先說明要動哪些檔案」「每次只改一小步」。這份規則會影響之後每一次對話,省掉大量重複交代。

三、三種用法各管一件事,別混著用

新手最容易犯的錯,是把 Cursor 當成一個萬能聊天框,什麼都往對話裡塞。它其實有三種明確分工的用法:

用法 觸發方式 適合幹什麼 我的實測體感
Tab 自動補全打字時自動出現灰色建議,按 Tab 接受寫重複樣板、補完你已經寫了一半的程式碼最不吵人,命中率意外地高
行內編輯(Inline Edit)選中一段程式碼,快捷鍵呼叫(一般為 Ctrl+K 或 Cmd+K)對著「這一段」提需求:加例外處理、換個寫法、加註解範圍明確,改壞了好回頭
對話與 Agent側邊 Chat 面板,可下達多步驟任務跨檔案的理解、新功能從零搭、一次改多個檔案能力最強,也最需要盯著看

分工原則很簡單:知道要改哪一行,用行內編輯;不知道程式碼在哪,用對話去問;要一口氣做好幾件事,才交給 Agent。 反過來用(什麼都丟給 Agent)是新手燒額度又改壞程式的最大來源。

四、@codebase:讓它讀懂你整個專案的關鍵

對話時有一個符號非常好用:@。在 Chat 輸入框裡打 @,可以引用特定檔案、資料夾或整個程式碼庫(codebase)。

我實測的第一個問題就是這麼問的:「@codebase 這個專案的報表資料從哪裡讀取?最後寫到哪裡?」它給出的回答帶著具體檔名和行號,我按圖索驥翻過去核對,大方向是對的。這一刻的價值很難形容——以前我要在幾十個檔案裡全域搜尋半天的事,變成一次提問。

不過要潑一盆冷水:它給的檔名和行號要自己點開核對。我在這一週裡也遇過它指向一個相似但不對的檔案。AI 對程式碼的理解是「讀出來的猜測」,不是「執行過的結論」。

我把 Cursor 當成一位新來的實習生:它讀整個專案的速度比我快得多,指出來的路大部分是對的,但你把鑰匙交給它之前,還是要自己看一眼地圖。

五、實測:給老專案加一個功能的全過程

回到開頭那個任務。我的完整流程是這樣的,你可以照抄:

第一步,先讓它當導覽。 我用 @codebase 問了三個問題:專案入口在哪、資料怎麼流動、有沒有現成的匯出相關程式碼。花二十分鐘,把它的回答整理成我自己的一張紙條。

第二步,讓它出方案,不出程式碼。 我明確要求:「先不要寫程式碼,告訴我你打算改哪幾個檔案、每個檔案做什麼。」它列了四個檔案的改動計畫。這一步是安全閘:方案錯了改需求是零成本,程式碼錯了改起來就麻煩了。

第三步,按方案一小步一小步做。 每一步,我用行內編輯或對話讓它生成那一小塊,立刻看懂、立刻測試、立刻提交版本控制。絕不讓它一口氣改完四個檔案。

第四步,讓它當審稿人。 功能跑通後,我把改動範圍圈出來問它:「這段有什麼邊界情況没考慮到?」它指出了一個日期格式在不同作業系統下的坑,是實打實的價值。

六、它會出錯的三個地方,先打好預防針

一週實測下來,我踩過的坑集中在三類,新手請直接記下:

一、生成的程式碼不一定能跑。 它有時引用一個這個專案裡根本没安裝的套件,或用舊版的函式寫法。所以每一小步都要真的執行測試,不能只看著「像對的」就往下走。

二、Agent 模式改起來很爽,回頭也很痛。 它一次動五六個檔案時,你要逐個核對改了什麼。養成用 Git 的習慣:讓 AI 動手之前先 commit,改壞了隨時退回去。這條是底線,没有商量的餘地。

三、它對「你的業務規則」一無所知。 程式碼邏輯它能看懂,但「我們公司報表金額一律不四捨五入」這種規矩,它不會知道,除非你寫進規則檔或在對話裡明說。AI 改出來「語法對、業務錯」的程式碼,是最難被新手發現的錯。

七、上手工單:今天就能做的五步

  1. 官網下載 Cursor,打開你手頭最小的那個專案(别一上來就挑最大的)。
  2. 等索引建立完,用 @codebase 問三個「這專案是怎麼運作的」問題。
  3. 選一段看不太懂的程式碼,用行內編輯讓它「逐段加註解」,當閱讀輔助。
  4. 寫一份三五行的專案規則檔,把你的偏好固定下來。
  5. 從明天起,立一條鐵律:AI 動手前必先 Git commit,每一小步必先測試。

工具的門檻比你想像的低,真正的門檻是「每一小步都驗證」的紀律。Cursor 把寫程式的手藝門檻拉低了,但没有把「判斷對錯」的責任拉低——那部分,永遠是你的。

工具推薦隨身機器人(新用戶免費試用 7 天)

讀完程式碼要找人来問、寫完程式要找人幫忙看文件,隨身機器人隨叫隨到。新用戶免費試用 7 天,去 sylogs.com 首頁即可開通。

下一篇預告: 不想花錢訂閱、也不想把資料傳到雲端?下一篇實測 Ollama——在自己的電腦上離線跑開源大模型,斷網也能用,具體怎麼裝、怎麼選模型、一般家用電腦跑得動多大的,一次講清楚。

業州愚公 | SY 視野(sylogs.com)原創內容,轉載請註明出處。