揭秘Vibe Coding類產(chǎn)品:AI是如何從“聊天”進(jìn)化到“實(shí)干”的?
本文旨在為廣大AI產(chǎn)品經(jīng)理及科技愛好者揭開“Vibe Coding”神秘的面紗。我們將層層深入,探究AI是如何從一個(gè)只能“聊天”的大語言模型,一步步獲得感知環(huán)境、操作文件的“手腳”,最終進(jìn)化到能夠理解復(fù)雜部署流程、打通從編碼到上線的“最后一公里”。理解其工作原理,不僅能幫助我們消除不必要的焦慮,更能啟發(fā)我們?nèi)绾胃咝У乩眠@些強(qiáng)大的工具。
一、AI 輔助編程與Vibe Coding
“程序員很快就要被AI取代了”——這樣的論調(diào)在科技圈中此起彼伏,引發(fā)著行業(yè)內(nèi)廣泛的討論與焦慮。還記得Cursor在24年剛剛爆火的時(shí)候,這種焦慮情緒達(dá)到了頂峰。
大量非開發(fā)人員使用這種AI工具開始輔助編程。其中最著名的要數(shù)“小貓補(bǔ)光燈”這個(gè)app案例:
創(chuàng)始人陳云飛雖然沒有系統(tǒng)學(xué)過編程,但借助 AI 工具 Cursor,他從產(chǎn)生想法到完成開發(fā),前后僅花了 1 個(gè)小時(shí)。他在 App 里預(yù)設(shè)了四種補(bǔ)光圖片,同時(shí)內(nèi)置了雙區(qū)域分屏補(bǔ)光、亮度調(diào)節(jié)等功能,用戶只需打開就能直接補(bǔ)光。沒想到 Pro 版上架 4 小時(shí)內(nèi)就沖上付費(fèi)總榜第一,截至 2024 年 12 月,兩款 App 的總下載量接近 20 萬,成為了 AI 原生時(shí)代的一款爆款小體量應(yīng)用。
而所謂“Vibe Coding”,并非特指某一款具體的產(chǎn)品(這個(gè)術(shù)語由著名AI研究員Andrej Karpathy在2025年初提出),是一種全新的開發(fā)體驗(yàn):
開發(fā)者通過自然語言與AI流暢交互,將腦海中的想法無縫轉(zhuǎn)化為可執(zhí)行的代碼,甚至一鍵完成云端部署。這是一種近乎“心流”的創(chuàng)造過程,AI仿佛真正領(lǐng)會了你的“Vibe”(感覺、意圖),并化身為高效的執(zhí)行者。
什么是Vibe Coding?從“精確指令”到“感覺對味”
要理解Vibe Coding,我們首先需要認(rèn)識到,它不僅僅是一個(gè)新工具或新技術(shù),更是一種人機(jī)交互思想的根本性轉(zhuǎn)變。它標(biāo)志著我們正在從一個(gè)要求機(jī)器“聽懂命令”的時(shí)代,邁向一個(gè)機(jī)器能夠“領(lǐng)會意圖”的新紀(jì)元。
“Vibe”的精髓:傳遞意圖,而非命令
“Vibe Coding”這個(gè)詞本身就極具啟發(fā)性。它的核心不在于“Coding”(編碼),而在于“Vibe”(氛圍、感覺)。它強(qiáng)調(diào)的是,我們向AI傳遞的是一個(gè)整體的感覺、最終的意圖和期望的用戶體驗(yàn),而不是一行行語法精確、邏輯嚴(yán)密的代碼。這與傳統(tǒng)開發(fā)模式形成了鮮明對比,后者要求的是清晰、明確、無歧義的指令。
為了更直觀地理解,我們可以借助一個(gè)生活中的比喻:
假設(shè)你想請一位頂級大廚為你做一道菜。
- 傳統(tǒng)編程就像是給他一份詳盡的菜譜:取5克鹽、10毫升醬油,將烤箱預(yù)熱到180度,烤20分鐘……你必須精確定義每一個(gè)步驟和參數(shù),錯(cuò)一步都可能導(dǎo)致失敗。
- VibeCoding則像是告訴大廚:“我想要一道嘗起來有地中海夏日傍晚感覺的菜,口感要清爽,帶一點(diǎn)檸檬的酸甜和羅勒的清香?!蹦忝枋龅氖亲罱K的“Vibe”,而大廚會憑借他的專業(yè)知識和經(jīng)驗(yàn),將這個(gè)抽象的感覺轉(zhuǎn)化為一道具體的美味佳肴。
AI在Vibe Coding中扮演的,正是這位“頂級大廚”的角色。
這種交互方式的轉(zhuǎn)變,其本質(zhì)是從面向過程的命令進(jìn)化為面向結(jié)果的描述。我們可以通過以下對比來加深理解:
- 傳統(tǒng)方式:聚焦于“如何做”,需要提供清晰、無歧義的步驟。用戶是“指令下達(dá)者”。
- VibeCoding:聚焦于“要什么”,允許用模糊、高層次的自然語言描述最終目標(biāo)。用戶是“愿景描繪者”。
這本質(zhì)上是從命令式(Imperative)到聲明式(Declarative)交互的躍遷——我們不再需要告訴AI每一步“怎么做”,只需要聲明我們“要什么”。
兩種運(yùn)作“心智模式”
在實(shí)踐中,Vibe Coding并非鐵板一塊,而是根據(jù)使用者的目標(biāo)和對代碼的控制程度,呈現(xiàn)出兩種主流的應(yīng)用模式。與其將它們視為非黑即白的選擇,不如理解為一個(gè)連續(xù)的光譜,光譜的兩端代表著不同的工作心智模型。
“純粹”Vibe Coding(原型驗(yàn)證者的心智模型): 這是Vibe Coding最激進(jìn)、最富探索性的一端。在這種模式下,使用者完全信任AI的輸出,將速度和實(shí)驗(yàn)性置于代碼的嚴(yán)謹(jǐn)性之上。
Karpathy將其描述為“完全沉浸于感覺,甚至忘記代碼的存在” 。這種模式的核心在于,使用者可能在不完全理解每一行代碼的情況下接受并運(yùn)行它。這對于產(chǎn)品經(jīng)理來說是完美的工具,尤其適用于快速驗(yàn)證一個(gè)新想法、構(gòu)建“一次性周末項(xiàng)目”或開發(fā)MVP,因?yàn)槠涫滓繕?biāo)是快速獲得市場反饋 。
負(fù)責(zé)任的AI輔助開發(fā)(專業(yè)工程師的心智模型): 這是光譜的另一端,代表了Vibe Coding在專業(yè)、嚴(yán)肅的開發(fā)場景中的應(yīng)用。在這里,AI不再是唯一的創(chuàng)造者,而是一個(gè)強(qiáng)大的“AI結(jié)對編程伙伴” 。開發(fā)者會引導(dǎo)AI生成代碼,但隨后會進(jìn)行嚴(yán)格的審查、測試,并確保自己完全理解這些代碼,最終對產(chǎn)品的質(zhì)量負(fù)全部責(zé)任 。
正如程序員Simon Willison所說,如果你審查并理解了AI生成的每一行代碼,那么你只是在使用一個(gè)高級的“打字助理”,而非真正意義上的“純粹”Vibe Coding 。這種模式旨在提升專業(yè)人員的生產(chǎn)力,而非取代專業(yè)判斷。
對于AI產(chǎn)品經(jīng)理而言,理解這兩個(gè)“心智模式”至關(guān)重要。它提供了一個(gè)清晰的決策框架:你的工作并非簡單地在“玩具”和“生產(chǎn)級系統(tǒng)”之間做選擇。當(dāng)你使用Vibe Coding工具構(gòu)建一個(gè)用于向工程師交接的高保真交互原型時(shí),你的行為就位于這個(gè)光譜的中間地帶——你追求比“純粹”模式更高的保真度和邏輯嚴(yán)謹(jǐn)性,但又不像專業(yè)工程師那樣對生產(chǎn)環(huán)境的最終代碼負(fù)全責(zé)。你在這個(gè)光譜上的位置,完全由你的當(dāng)前目標(biāo)(是追求速度,還是追求穩(wěn)健性)來決定。
那么,就讓我們從故事的起點(diǎn)開始,看看AI最初面臨的那個(gè)根本性瓶頸。
二、最初的瓶頸:為什么大語言模型(LLM)只是個(gè)“聊天機(jī)器”?
要理解后續(xù)所有技術(shù)方案的價(jià)值,我們必須首先認(rèn)識到AI編程在起步階段面臨的一個(gè)根本性困境。這個(gè)困境源于大語言模型(LLM)的核心本質(zhì)。
無論模型的能力看起來多么強(qiáng)大,其本質(zhì)上依然是一個(gè)“聊天機(jī)器”。它的核心機(jī)制是接收一段文本(Prompt),然后生成一段相關(guān)的文本作為回復(fù)。它本身無法主動與外界交互,更不能直接訪問或操作我們本地計(jì)算機(jī)上的文件系統(tǒng)。
在這種限制下,最早期的AI輔助編程體驗(yàn)是極其低效和繁瑣的。程序員們只能扮演“搬運(yùn)工”的角色:
- 從本地代碼編輯器中復(fù)制一段代碼。
- 將其粘貼到AI的聊天框中,并附上修改指令。
- 等待AI生成回復(fù)。
- 再將AI回復(fù)的代碼復(fù)制出來,粘貼回本地編輯器進(jìn)行調(diào)試。
這個(gè)不斷循環(huán)的“復(fù)制-粘貼”過程,嚴(yán)重割裂了開發(fā)者的心流。問題的根源就在于AI“看得見”你發(fā)給它的文本,卻“摸不著”你電腦里的真實(shí)文件。正是為了突破這一核心瓶頸,為AI裝上能夠感知和操作現(xiàn)實(shí)世界的“手”和“腳”,AI Agent的概念應(yīng)運(yùn)而生。
三、第一次飛躍:AI Agent,為模型裝上“手”和“腳”
AI Agent的出現(xiàn),是AI從“能說”到“能做”的關(guān)鍵一步,也是整個(gè)Vibe Coding技術(shù)體系的基石。它巧妙地在抽象的語言模型與具體的本地環(huán)境之間架起了一座橋梁。
從定義上看,AIAgent是一個(gè)運(yùn)行在開發(fā)者本地的小程序,充當(dāng)著大語言模型與本地代碼之間的“中間層”。它的核心工作機(jī)制可以分解為以下三步:
- 預(yù)定義能力:開發(fā)者會預(yù)先為Agent編寫好一系列用于操作本地環(huán)境的函數(shù)?;A(chǔ)能力包括read_file(讀取文件)、write_file(寫入文件)等文件操作,而更強(qiáng)大的Agent甚至還能瀏覽網(wǎng)頁、執(zhí)行終端命令等等。
- 打包請求:當(dāng)用戶發(fā)出指令時(shí)(例如“幫我修復(fù)這個(gè)bug”),Agent會將這些預(yù)定義好的函數(shù)名和用法,連同用戶的指令(Prompt)一起打包,發(fā)送給云端的大語言模型。
- 轉(zhuǎn)譯與執(zhí)行:大語言模型在理解了用戶的意圖和自己可用的“工具”(即那些函數(shù))后,并不會直接返回代碼,而是回復(fù)一條指令,告訴本地的Agent:“請幫我調(diào)用write_file函數(shù),向某某文件寫入如下內(nèi)容”。Agent接收到指令后,在本地執(zhí)行相應(yīng)的函數(shù),從而間接地完成了對本地文件的讀寫操作。
在擁有了讀寫文件的能力后,AI如何高效且準(zhǔn)確地修改代碼成為了下一個(gè)關(guān)鍵問題。對此,業(yè)界探索出了兩種主要方式,其中一種憑借其高效和可靠性脫穎而出。
方法一(低效):直接生成修改后的完整文件
這種方式簡單直接,但弊端明顯。哪怕用戶只想修改一個(gè)字符,AI也必須將整個(gè)文件重新生成一遍。這不僅效率低下、浪費(fèi)計(jì)算資源(Token),更致命的是,當(dāng)文件很長時(shí),AI很難保證在修改目標(biāo)區(qū)域的同時(shí),完美復(fù)現(xiàn)其他未改動的部分,極易引入新的bug。
方法二(高效):使用“Diff格式”進(jìn)行增量修改
這是目前絕大多數(shù)AI編程工具采用的方案。“Diff格式” 是一種文本格式,它不包含完整的文件內(nèi)容,而是精確地描述:“哪個(gè)文件的第幾行,需要被替換成什么新的內(nèi)容”。這種格式的優(yōu)勢在于:
- 歷史悠久,算法成熟:像Git、SVN這類版本控制工具早已普遍使用Diff算法,技術(shù)非常成熟。
- 模型擅長,根植于訓(xùn)練數(shù)據(jù):模型生成Diff格式的超強(qiáng)能力并非巧合,而是其訓(xùn)練數(shù)據(jù)使然。它的訓(xùn)練語料庫(整個(gè)互聯(lián)網(wǎng))中充斥著海量的Git提交記錄和版本控制歷史,這使得它實(shí)際上是在說一種自己被深度訓(xùn)練過的“母語”。
- 校驗(yàn)機(jī)制,提升可靠性:為了防止模型理解錯(cuò)誤,Agent在應(yīng)用Diff修改前,會先進(jìn)行一步校驗(yàn)——檢查Diff中引用的原始代碼片段是否與當(dāng)前本地文件的內(nèi)容完全一致。如果不一致,說明模型可能“看錯(cuò)了”,Agent會放棄本次修改并發(fā)起重試。這一機(jī)制極大地保證了代碼修改的準(zhǔn)確性。
至此,通過AI Agent和Diff格式,AI終于擁有了可靠的“手”和“腳”,可以動手修改我們的代碼了。但人們很快發(fā)現(xiàn),它的“大腦”似乎還不太靈光,經(jīng)常犯一些低級錯(cuò)誤,這又是為什么呢?
四、智能的升級:上下文(Context)是提升AI“智商”的關(guān)鍵
為AI提供了操作能力后,它的“智能”程度在很大程度上取決于它對當(dāng)前工作環(huán)境的理解深度。上下文(Context),正是連接AI與開發(fā)者真實(shí)工作場景、提升其“智商”的關(guān)鍵。
如果僅僅依賴用戶輸入的簡短指令,AI的表現(xiàn)常常會顯得非?!氨孔尽薄S袃蓚€(gè)經(jīng)典的例子:
- IDE(代碼編輯器)明明已經(jīng)用紅色波浪線高亮了語法錯(cuò)誤,AI卻像沒看見一樣,反復(fù)修改多次才能改對。
- AI信誓旦旦地要去修改一個(gè)文件,結(jié)果那個(gè)文件在項(xiàng)目中根本不存在。
這些問題的根源在于信息不對稱:AI看不到開發(fā)者屏幕上豐富的環(huán)境信息。聰明的工程師們意識到,解決辦法很簡單——把開發(fā)者能看到的信息,也一并“喂”給AI。
因此,現(xiàn)代的AI編程工具在向大語言模型發(fā)送請求時(shí),除了用戶的指令外,還會主動收集并附上大量的上下文信息。這些信息通常包括:
- 當(dāng)前項(xiàng)目的完整文件結(jié)構(gòu)樹
- 用戶光標(biāo)所在或正在查看的文件名
- 編輯器中所有已打開的文件標(biāo)簽頁
- 命令行(終端)的最新輸出內(nèi)容(尤其是報(bào)錯(cuò)信息)
- 甚至,當(dāng)前的時(shí)間
這樣做的最終目的,是讓AI看到的“現(xiàn)場”與用戶看到的幾乎一模一樣。通過盡可能多地提供環(huán)境信息,AI能夠更準(zhǔn)確地理解用戶的真實(shí)意圖,洞察代碼之間的關(guān)聯(lián),從而做出更智能的判斷,讓整個(gè)編程過程變得無比流暢。
解決了本地編碼的智能化問題后,一個(gè)更大、更復(fù)雜的挑戰(zhàn)擺在了面前:如何讓AI跨越從本地到云端的鴻溝,完成代碼的最終部署?
五、打通最后一公里:從本地代碼到云端部署
如果AI只能在本地生成代碼,卻無法將其部署上線,那么它的價(jià)值將大打折扣,Vibe Coding的閉環(huán)體驗(yàn)也無從談起。自動化部署是實(shí)現(xiàn)端到端開發(fā)自動化的“最后一公里”,但其過程遠(yuǎn)比本地編碼復(fù)雜。
部署上線通常涉及一系列繁瑣的操作,比如配置后臺服務(wù)、建立數(shù)據(jù)庫、設(shè)置域名等等。這些操作超出了傳統(tǒng)AI Agent讀寫本地文件的能力范疇。為了讓AI也能勝任這些復(fù)雜的云端任務(wù),業(yè)界引入了兩項(xiàng)關(guān)鍵技術(shù):MCPs 和 工程模板。
MCPs:AI的“技能插件系統(tǒng)”
你可以將MCP(Machine-Credible Plan) 理解為AI編程機(jī)器人的“技能插件”或“擴(kuò)展程序商店”,就像我們?yōu)闉g覽器安裝擴(kuò)展程序來增強(qiáng)功能一樣。
MCPs允許AI編程機(jī)器人動態(tài)地安裝新的“技能包”,使其能夠去操作那些它原本不懂的外部系統(tǒng)。例如,云服務(wù)商可以提供一個(gè)MCP,其中包含了操作自家云平臺的各項(xiàng)技能,如管理數(shù)據(jù)庫、上傳靜態(tài)網(wǎng)頁、創(chuàng)建云函數(shù)等。當(dāng)AI需要執(zhí)行這些操作時(shí),它就可以通過調(diào)用MCP提供的接口來完成。
工程模板:給AI的“專屬說明書”
MCP解決了“如何做”的問題,但還有一個(gè)“做什么”和“怎么寫”的問題。每個(gè)云平臺的API接口都千差萬別,而且新的云服務(wù)層出不窮,AI模型不可能提前學(xué)完所有平臺的實(shí)現(xiàn)細(xì)節(jié)。
這背后更深層的原因是,網(wǎng)站上線后,是網(wǎng)站自身的代碼在持續(xù)訪問云資源(如讀寫數(shù)據(jù)庫),而此時(shí)此刻AI早已不在場了。因此,AI在最初編寫代碼時(shí),就必須使用目標(biāo)云平臺指定的、正確的API和庫,確保最終生成的代碼具備獨(dú)立在云環(huán)境中運(yùn)行的能力。
為此,云平臺通常會提供一套完整的工程模板。這些模板中不僅包含了項(xiàng)目所需的庫和配置文件,最重要的是,它內(nèi)置了一份“給AI看的提示詞(Prompt)”。這份專屬說明書會非常清楚地告訴AI:
- 針對本云平臺,代碼應(yīng)該遵循什么樣的結(jié)構(gòu)。
- 應(yīng)該如何調(diào)用API來訪問數(shù)據(jù)。
- 應(yīng)該如何執(zhí)行部署流程。
- 甚至,當(dāng)遇到未知問題時(shí),應(yīng)該如何去查詢該平臺的線上文檔。
這份內(nèi)置的提示詞會在開發(fā)過程中,自動與用戶的指令合并,一同發(fā)送給大語言模型,引導(dǎo)它生成完全適配特定云平臺的代碼。
結(jié)合了AI Agent、豐富的上下文、MCP技能插件和工程模板說明書后,一個(gè)完整的自動化開發(fā)與部署流程終于成形。
六、完整流程復(fù)盤:一次“Vibe Coding”體驗(yàn)的全過程
現(xiàn)在,讓我們將前面所有的技術(shù)點(diǎn)串聯(lián)起來,復(fù)盤一次完整的“Vibe Coding”用戶體驗(yàn),以建立一個(gè)全局的認(rèn)知。
- 用戶發(fā)起請求:用戶在Cursor或者ClaudeCode說:“幫我寫一個(gè)網(wǎng)站”。
- Agent收集信息:機(jī)器人(AIAgent)開始工作。它自動收集IDE中的各種上下文信息(文件讀寫接口、當(dāng)前報(bào)錯(cuò)、已打開的文件等),同時(shí)讀取工程模板中自帶的那份“給AI的提示詞”。
- 信息打包發(fā)送:Agent將【用戶需求】+【模板提示詞】+【環(huán)境信息】三者打包,一同發(fā)送給云端的大語言模型。
- LLM生成代碼:模型根據(jù)收到的完整信息,立刻理解到這個(gè)程序未來將部署在特定的云服務(wù)上。于是,它選用該平臺對應(yīng)的接口來編寫代碼,并以高效的“Diff格式”返回給本地的Agent。
- Agent應(yīng)用修改:Agent接收到Diff后,先校驗(yàn)其引用的代碼是否與本地文件匹配。校驗(yàn)通過后,應(yīng)用修改。這個(gè)過程可能會根據(jù)代碼的復(fù)雜性進(jìn)行反復(fù)打磨和迭代修正,直到整個(gè)網(wǎng)站功能完成并在本地成功運(yùn)行。
- 用戶發(fā)起部署:用戶測試無誤后,發(fā)出新指令:“上線網(wǎng)站”。
- Agent調(diào)用MCP:因?yàn)轫?xiàng)目一開始就配置好了該云服務(wù)的MCP,Agent此時(shí)會將MCP提供的部署函數(shù)信息發(fā)給AI模型。模型分析后,返回一條指令,引導(dǎo)Agent調(diào)用相應(yīng)的MCP服務(wù)。
- 完成云端部署:MCP服務(wù)接收到指令后,開始操作云平臺,自動完成建立數(shù)據(jù)庫、配置域名、上傳文件等所有上線工作。
通過這個(gè)流程,AI真正打通了從創(chuàng)意到產(chǎn)品的全鏈路。對于一些簡單項(xiàng)目,它甚至實(shí)現(xiàn)了“零基礎(chǔ)寫代碼,零基礎(chǔ)上線運(yùn)維”的理想體驗(yàn)。
七、從原理到實(shí)踐:高效使用Vibe Coding類工具的三大技巧
理解了上述工作原理后,我們就能更有策略地使用這類AI編程工具,將它們的效能發(fā)揮到最大。以下是三個(gè)基于技術(shù)原理的實(shí)用技巧。
技巧一:明確你的“最終目的地”
操作建議:在開始編碼前,盡量選擇或配置好與你目標(biāo)部署環(huán)境相匹配的工程模板。從第一句指令開始,就明確告訴AI你的程序未來將在哪個(gè)云平臺上運(yùn)行。
原理解析:正如前文所述,AI需要依賴“工程模板”中的專屬提示詞和配置,才能寫出適配特定云平臺API的代碼。一開始就指明方向,可以從根本上避免后期因平臺不兼容而導(dǎo)致的大量重構(gòu)工作。
技巧二:為AI創(chuàng)造一個(gè)“信息豐富的現(xiàn)場”
操作建議:在向AI提需求時(shí),盡可能打開所有相關(guān)的代碼文件,保持項(xiàng)目結(jié)構(gòu)清晰。如果遇到錯(cuò)誤,將完整的錯(cuò)誤信息或終端輸出一并提供給它。
原理解析:上下文是提升AI“智商”的關(guān)鍵。你提供給AI的環(huán)境信息越豐富、越接近你的真實(shí)工作場景,它就越能準(zhǔn)確地理解你的意圖,生成高質(zhì)量、高相關(guān)性的代碼。
技巧三:將大任務(wù)拆解成小步驟
操作建議:避免提出“幫我寫一個(gè)完整的電商網(wǎng)站”這樣模糊而龐大的需求。應(yīng)將其分解為“創(chuàng)建用戶數(shù)據(jù)庫表”、“編寫用戶注冊接口”、“實(shí)現(xiàn)商品展示頁面”等一系列具體、可驗(yàn)證的步驟,引導(dǎo)AI逐步完成和測試。
原理解析:AI的核心工作流程是“接收指令→生成代碼(Diff)→應(yīng)用修改→驗(yàn)證”的循環(huán)。小而明確的指令更符合其工作模式,能夠顯著提高單次任務(wù)的成功率和代碼的準(zhǔn)確性,讓你能更好地掌控開發(fā)節(jié)奏。
八、結(jié)論:AI取代的是“手”,而非“心”
回到最初的問題:“程序員真的被取代了嗎?”
當(dāng)我們深入了解了AI編程工具的演進(jìn)歷程后,會發(fā)現(xiàn)答案并非如此。我們花了很長時(shí)間,一步步將自己的技能、工作流、甚至部署經(jīng)驗(yàn)“教會”了AI。我們拆解自己的能力,打包成提示詞和工具,目的正是為了將自己從陷入每一個(gè)if-else反復(fù)掙扎的泥潭中解放出來。
如果說程序是人類意志的延伸,那么今天的AI并非讓人類退出創(chuàng)造過程,而是將人送回了它真正的起點(diǎn)——回到那個(gè)有想法、愿意創(chuàng)造的自己,就像某天靈光一閃、第一次想到讓AI通過Agent自己寫程序的那個(gè)程序員一樣。
它取代的是我們敲鍵盤的手,而不是第一個(gè)想法的心。
本文由 @Tracy 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)作者許可,禁止轉(zhuǎn)載
題圖由豆包AI生成
寫的真好??