AI serieko elkarrizketa 14: vibe coding eta spec coding-en arteko aldea?
Hau da programatzaile gehienek izaten duten arazoa. Vibe Coding eta Spec Coding gaur egun hizkuntza-eredu handien (LLM) laguntzaz programatzerakoan erabiltzen diren bi lan-paradigma desberdin dira. Haien funtsezko aldea da: AI-ri ematen diozun "input-a" sentsazio lausoa den edo zehaztapen zehatza.
1. Sukaldaritzaren adibidea erabiliz, vibe coding eta spec coding-en arteko aldea azaldu
- Vibe Coding = Lagun bati "janari mina nahi dut" esaten diozu, eta lagunak sentsazioaren arabera plater bat prestatzen du. Zuk dastatu eta "gehiago gatz" esaten duzu, eta berak gatza gehitzen du. Zaporea harrigarria izan daiteke, baina beste lagun batek prestatuz gero guztiz desberdina izango da.
- Spec Coding = Sukaldaritza errezeta idazten duzu: "Pixian douban 20g, behi-xerrak 150g, apio-zatiak 50g, su bizian 2 minutuz salteatu, ohetatik atera baino lehen azukrea 3g". Sukaldari desberdinek errezeta jarraituz, zaporea oso antzekoa izango da.
2. Bien definizioak
| Dimentsioa | Vibe Coding | Spec Coding |
|---|---|---|
| Aliasak | Sentsazioz gidatutako programazioa, prompt-ak inprobisatzea | Zehaztapenak gidatutako programazioa, dokumentazioa lehenestea |
| Sarreraren forma | "Lagundu iezadazu itxura ona eta teknologia sentsazioa duen saioa hasteko orri bat egiten." | "Saioa hasteko orrialdeak e-posta/pasahitz sarrera-koadroa, gogoratu laukia, bidali botoia eduki behar ditu; frontend-ak React + Tailwind erabiltzen du; inprimakiaren balidazio-arauak: e-posta formatua, pasahitzaren luzera ≥8; huts egitean, mezu gorria erakutsi..." |
| AI erabiltzeko modua | Elkarrizketazkoa, iteratiboa: norabide orokorra eman → irteera ikusi → berriro doitu | Ingeniari moduan: lehenik PRD/zehaztapen tekniko zehatza idatzi → AI-k zehaztapenean oinarrituta kodea sortzen du |
| Gizakiaren parte-hartzea | Baxua: AI-k sormena erabiltzen du, gizakia "sentsazioa egokia den" arduratzeaz soilik | Altua: gizakiak diseinua/arkitektura egiten du lehenik, AI batez ere exekuzioaz arduratzen da |
| Ohiko eszenatokiak | Prototipo azkarra, tresna pertsonalak, UI azterketa, sormenezko kode idazketa | Ekoizpenerako sistemak, talde lankidetza, mantendu eta probatu beharreko kodea |
3. Bien lan-fluxuen konparaketa
Vibe Coding prozesua
- Ideia lausoa: "Web scraper bat idatzi nahi dut, Zhihu-ren zerrenda beroa hartzeko."
- Lehenengo prompt-a idatzi: zuzenean AI-k kodea sortzea.
- Exekutatu → errorea → errorea itsatsi → AI-k zuzendu.
- Interfazea itsusia dela sentitu → "Botoia biribilago bihurtu, atzeko planoa urdin degradatu bihurtu" → AI-k aldatu.
- Funtzioa falta da → "Gehitu CSV-ra gordetzeko funtzio bat" → AI-k gehitu.
- 3-5 errepikatu "ia ondo sentitzen" arte.
Spec Coding prozesua
- Zehaztapen-dokumentua idatzi: sarrera/irteera, datu-egitura, errore-kudeaketa, errendimendu-eskakizunak, ez-funtzionalak (adibidez, erregistroa, tasa-muga) zehaztu.
- Zehaztapenak zereginetan banatu: adibidez 1. zeregina:
fetch_hot_topics()funtzioa inplementatu, spec-en API sinadura jarraituz. - Zeregin bakoitzeko AI-k inplementatu: prompt-ean funtzio sinadura, iruzkinak, proba kasuen esperotako emaitzak sartu.
- Giza berrikuspena eta balidazioa: zehaztapena betetzen dela ziurtatu, unitate-probak exekutatu.
- Integrazioa eta erregresioa.
4. Abantaila eta desabantailen konparaketa
| Ezaugarria | Vibe Coding | Spec Coding |
|---|---|---|
| Abiadura | Oso azkarra, minutu batzuetan prototipoa | Motela, dokumentazioa idatzi eta zereginak banatu behar |
| Kodearen kalitatea | Baxua (erredundantea, inkoherentea, ezkutuko bug-ak egon daitezke) | Altua (irakurterraza, probagarria, arkitektura betetzen du) |
| Mantengarritasuna | Txarra, etorkizunekoek "zergatik idatzi da horrela" ulertzen ez dute | Ona, zehaztapena dokumentazioa da |
| LLM-ren menpekotasuna | Oso altua, modeloa aldatuz gero irteera erabat desberdina izan daiteke | Ertaina, zehaztapena argia bada, modelo desberdinek antzeko egitura sor dezakete |
| Arazketa zailtasuna | Zaila, ez dakigu nondik datorren logika | Erraza, spec-aren arabera banan-banan egiaztatu |
| Talde lankidetzarako egokia | Ia ezinezkoa | Bai (spec-a komunikazio-kontratu gisa) |
| Irteeraren ziurtasuna | Baxua, elkarrizketa bakoitzeko emaitza alda daiteke | Altua, spec berberak irteera egonkorra sortzen du |
5. Egoera errealeko erabilera gomendioak
Lanean, vibe coding eta spec coding ez dira aukeratu behar, baizik eta nahasketa erabili, egoera egokian irtenbide egokia erabiliz:
- Azterketa fasean (teknologia aukeraketa edo UI estiloa ziur ez dagoenean), erabili Vibe Coding proposamen desberdinak azkar egiaztatzeko, adibidez 'idatzi Tailwind erabiliz txartel osagai bat efektua ikusteko'.
- Behin proposamena erabakita, berehala aldatu Spec Coding-era: arrakastadun prototipoa alderantzizko zehaztapen argi batean bildu (sarrera/irteera, muga-baldintzak, errore-kudeaketa), gero AI-ri edo giza garatzaileari spec horren arabera ekoizpenerako kodea idatzi.
Vibe hutsa soilik behin-behineko script-etarako edo barne tresnetarako egokia da; epe luzera mantendu eta askok erabilitako sistemetarako, Spec Coding derrigorrezkoa da.
评论
暂无已展示的评论。
发表评论(匿名)