Intervista tas-serje AI 14: Differenza bejn vibe coding u spec coding?
Din hija problema li ħafna programmaturi jiffaċċjaw. Vibe Coding u Spec Coding huma żewġ paradigmi tax-xogħol kompletament differenti meta tuża l-mudell lingwistiku kbir (LLM) għall-ipprogrammar. Id-differenza ewlenija hija: l-“input” li tagħti lill-AI huwa sensazzjoni vaga jew speċifikazzjoni preċiża.
I. Eżempju bit-tisjir biex nispjegaw id-differenza bejn vibe coding u spec coding
- Vibe Coding = Int tgħid lil ħabib “Irrid niekol pikkanti”, u hu jsajjar dixx skont is-sensazzjoni. Int togħma u tgħid “Aktar melħ”, u hu jżid melħ. It-togħma tista’ tkun meraviljuża, imma ħabib ieħor isajjar dixx kompletament differenti.
- Spec Coding = Int tikteb ir-riċetta: “20g peperoncino ta’ Pixiang, 150g ċanga mqatta’, 50g zokk tal-karfus, sajjar fuq nar għoli għal 2 minuti, żid 3g zokkor qabel ma tneħħi”. Kull kok li jsegwi r-riċetta jipproduċi togħma konsistenti ħafna.
II. Definizzjonijiet
| Dimensjoni | Vibe Coding | Spec Coding |
|---|---|---|
| Isem alternattiv | Programmjar immexxi mis-sensazzjoni, improvizzazzjoni permezz ta’ prompts | Programmjar immexxi mill-ispeċifikazzjoni, dokumentazzjoni qabel |
| Forma ta’ input | “Agħmilni paġna ta’ login sabiħa b’sensazzjoni teknoloġika” | “Il-paġna ta’ login għandu jkollha: kaxxi għall-email u password, checkbox ‘fakkarni’, buttuna ta’ sottomissjoni; frontend juża React + Tailwind; regoli ta’ validazzjoni: format email, password ≥8 karattri; meta tfalli, uri messaġġ ħamra…” |
| Użu tal-AI | Konversazzjonali, iterattiv: agħti direzzjoni ġenerali → ara r-riżultat → irfina | Inġinerizzat: ikteb PRD/teknika dettaljata l-ewwel → AI tiġġenera kodiċi skont l-ispeċifikazzjoni |
| Parteċipazzjoni umana | Baxxa: tiddependi fuq il-kreattività tal-AI, il-bniedem jivvaluta biss “jew le” | Għolja: il-bniedem l-ewwel jiddisinja/arkitettura, AI prinċipalment tesegwixxi |
| Xenarji tipiċi | Prototipi ta’ malajr, għodod personali, esplorazzjoni UI, kodiċi kreattiv | Sistemi ta’ produzzjoni, kollaborazzjoni f’tim, kodiċi li jista’ jinżamm u jiġi ttestjat |
III. Tqabbil tal-flussi tax-xogħol
Proċess ta’ Vibe Coding
- Idea vaga: “Irrid nikteb crawler biex niġbor il-lista popolari ta’ Zhihu.”
- Ikteb l-ewwel prompt: Ħalli l-AI tiġġenera l-kodiċi direttament.
- Eseguixxi → żball → waħħal l-iżball lura → l-AI timmodifika.
- Is-sensazzjoni li l-interface hi kerha → “Agħmel il-buttuna tonda, ibdel l-isfond għal gradient blu” → l-AI tibdel.
- Nieqes funzjoni → “Żid funzjoni biex issalva f’CSV” → l-AI żżid.
- Irrepeti 3-5 sakemm “is-sensazzjoni hi tajba biżżejjed”.
Proċess ta’ Spec Coding
- Ikteb dokument ta’ speċifikazzjoni: Iddefinixxi input/output, struttura tad-data, mmaniġġjar tal-iżbalji, rekwiżiti tal-prestazzjoni, rekwiżiti mhux funzjonali (eż., logging, rate limiting).
- Qassam l-ispeċifikazzjoni f’kompiti: Eż., kompitu 1: implimenta l-funzjoni
fetch_hot_topics(), segwi s-sinjalatura tal-API fl-ispeċifikazzjoni. - Ħalli l-AI timplimenta kull kompitu: Il-prompt jinkludi s-sinjalatura tal-funzjoni, kummenti, u testijiet mistennija.
- Reviżjoni u verifika umana: Kun żgur li tikkonforma mal-ispeċifikazzjoni, esegwixxi testijiet tal-unità.
- Integrazzjoni u regression.
IV. Tqabbil ta’ vantaġġi u żvantaġġi
| Karatteristika | Vibe Coding | Spec Coding |
|---|---|---|
| Veloċità tal-bidu | Malajr ħafna, prototip fi ftit minuti | Bil-mod, jeħtieġ kitba ta’ dokumenti u qsim ta’ kompiti |
| Kwalità tal-kodiċi | Baxxa (jista’ jkun redundant, inkonsistenti, b’bugs moħbija) | Għolja (leġibbli, testabbli, konformi mal-arkitettura) |
| Manutenibbiltà | Ħażina, min jiġi wara ma jifhemx “għaliex miktub hekk” | Tajba, l-ispeċifikazzjoni sservi bħala dokumentazzjoni |
| Dipendenza fuq LLM | Għolja ħafna, tibdel il-mudell jista’ jbiddel kompletament l-output | Medja, jekk l-ispeċifikazzjoni tkun ċara, mudelli differenti jipproduċu struttura simili |
| Diffikultà fid-debugging | Diffiċli, ma tafx minn fejn ġiet il-loġika | Faċli, iċċekkja skont l-ispeċifikazzjoni punt b’punt |
| Adattat għal kollaborazzjoni f’tim | Kważi impossibbli | Iva (l-ispeċifikazzjoni bħala kuntratt ta’ komunikazzjoni) |
| Determiniżmu tal-output | Baxx, ir-riżultati jistgħu jvarjaw f’kull konversazzjoni | Għoli, l-istess speċifikazzjoni tipproduċi output stabbli |
V. Suġġerimenti prattiċi għall-użu
“Fuq il-post tax-xogħol, vibe coding u spec coding mhumiex għażla bejn tnejn, imma użu mħallat, billi tagħżel l-approċċ xieraq għall-kuntest:
- Fil-fażi ta’ esplorazzjoni (meta ma tkunx ċert dwar l-għażla teknika jew l-istil UI), uża Vibe Coding biex tivvalida malajr għażliet differenti, pereżempju ‘Ikteb komponent ta’ karta b’Tailwind biex nara l-effett’.
- Ladarba l-għażla tkun determinata, aqleb immedjatament għal Spec Coding: irreġistra l-prototip b’suċċess f’ispeċifikazzjoni ċara (input/output, kundizzjonijiet ta’ konfini, mmaniġġjar tal-iżbalji), u mbagħad ħalli l-AI jew bniedem jiktbu mill-ġdid kodiċi ta’ livell ta’ produzzjoni strettament skont l-ispeċifikazzjoni.
Il-mod pur ta’ Vibe huwa adattat biss għal skripts li jintużaw darba jew għodod interni żgħar; għal sistemi li jeħtieġu manutenzjoni fit-tul u użu minn bosta persuni, Spec Coding huwa rekwiżit iebes.”
评论
暂无已展示的评论。
发表评论(匿名)