程式設計基礎篇 · 你現在能做什麼

把 AI 寫的程式碼「驗收」一遍

整章都在說「你可以不寫程式碼,但要會驗收」——今天就驗一次真的。三檔任務按投入挑一個:30 分鐘能完成最輕的那檔,一週能把驗收變成你的工作習慣。每檔都配了直接可用的提示詞。

挑一檔 · 今天就動手
🥉

任務一 · 讓 AI 自己交代

驗收的第一步:不看程式碼,先審口供

30 分鐘

拿一段 AI 給你寫過的程式碼(沒有現成的?讓 AI 現寫一個「通訊錄去重」小工具:輸入一堆姓名+手機號,去掉重複的)。然後把下面的提示詞甩給它,讓它自己交代用了什麼收納方式。

針對你剛才寫的這段程式碼,請回答三個問題,用白話講,我不是程式設計師: 1. 你用了什麼資料結構來存這些資料?(陣列、雜湊表、還是別的?) 2. 為什麼選它而不是別的?說出至少一個被你放棄的備選方案和放棄理由; 3. 如果資料量翻一千倍(比如從 100 條漲到 10 萬條),這段程式碼會變慢多少?哪一行最先扛不住? 如果你發現自己剛才的選擇其實不是最優的,請誠實說出來,並給出更好的版本。
完成標準:你能用自己的話向別人轉述「它用了什麼結構、為什麼、資料變多會怎樣」這三個答案——轉述不出來就再追問 AI 一輪。
🥈

任務二 · 要求換一種收納

同一功能兩種寫法,優劣你來裁判

半天

接著任務一的程式碼,讓 AI 用另一種資料結構把同一功能重寫一遍,並列出兩版的優劣對照表。關鍵在最後一步:結論不讓 AI 下,由你來判斷哪版適合你的場景。

請把剛才這個功能用另一種資料結構重新實現一遍(比如原來用陣列就換成雜湊表/Set,原來用雜湊表就換成陣列),然後: 1. 兩個版本的完整程式碼都貼出來,關鍵行加註釋說明「這裡在做什麼」; 2. 列一張優劣對照表,至少比較四個維度:查詢速度、插入速度、記憶體佔用、程式碼可讀性; 3. 分別說明:什麼場景下版本 A 更好、什麼場景下版本 B 更好,各舉一個具體例子(資料量多大、操作多頻繁); 4. 不要替我下結論,把判斷留給我。 我的場景是:(描述你的真實情況,比如「個人工具,資料最多幾百條」或「要上線給幾萬人用」)
完成標準:你基於自己的場景做出了選擇,並且能說出「因為我的資料量是 X、最頻繁的操作是 Y,所以選它」——說不出這句話,說明判斷還是 AI 替你做的。
🥇

任務三 · 給自己的專案做選型

先自己選,再和 AI 對答案

一週

挑你手頭一個真實需求(工作專案、個人工具都行)。先別問 AI——用 ds-summary 講的「怎麼找 / 怎麼進出」決策心法,自己把資料結構選了;然後讓 AI 獨立出一份選型方案,對比你倆是否一致。先過一遍下面的自查清單,把場景想清楚再動手。

📋 選型前自查清單(全部勾完再去問 AI)
資料會漲到多大?現在幾百條還是將來百萬條——量級決定一切
最常做的操作是查還是插?讀多寫少和寫多讀少,答案完全不同
要不要保持順序?需要按時間/名次排列的話,很多結構直接出局
要不要去重?天然去重是 Set/雜湊的主場
值不值得上快取?同樣的查詢反覆發生的話,想想 ds-6 的隱形折扣
🎉 五個問題都想清楚了——你已經完成了大部分工程師跳過的那一步。帶著這五個答案去問 AI,它給的方案品質會高一個檔次。
我有一個真實需求要做資料結構選型,我已經自己選好了,先別給答案,照下面流程走: 我的需求:(一句話描述,例:給公司 5000 個 SKU 做一個庫存查詢工具) 我的場景參數:資料量約 X 條、最頻繁的操作是 X、是否需要順序:X、是否需要去重:X、同樣的查詢是否反覆出現:X 請你: 1. 獨立給出你的選型方案(用什麼結構存、為什麼),先不要問我選了什麼; 2. 給出這個方案在我的資料量下的效能預估(查一次/插一次大概多快); 3. 說明資料量漲 10 倍後方案要不要變、怎麼變。 你答完後我會公佈我自己的選擇,我們對答案:一致就互相驗證,不一致就辯論誰的理由更站得住。
完成標準:你和 AI 的選型一致(互相驗證成功),或者不一致但你能在辯論中聽懂它的理由、說清你的理由——兩種結局都算贏,怕的是從頭到尾沒自己選過。
為什麼順序是「先自己選、再問 AI」?因為反過來的話,AI 的答案會瞬間蓋掉你的思考。反過來的話,AI 的答案會瞬間覆蓋你的思考,你永遠不知道自己原本會怎麼選。驗收能力就是在「我選的和它選的不一樣,為什麼?」這條縫裡長出來的。
順手記住 · 驗收時的三個紅旗訊號

做任務的過程中,如果在 AI 的回答裡看到這三種訊號,值得多追問一輪。

🚩
迴圈裡套迴圈找東西

兩層 for 挨個比對,就是 ds-1 的「大抽屜裡翻大抽屜」。追問一句:「換成 Set/雜湊表會不會更快?」

🚩
說不出放棄了什麼

問它備選方案時只會誇當前選擇、舉不出被放棄的選項——說明它沒做過選型,只是預設輸出

🚩
只在小資料上演示

Demo 用 10 條資料跑得飛快不代表什麼。永遠追問:「資料量翻一千倍會怎樣?」——這是本章最值錢的一句話。

✅ 這一課想和你分享的