← 返回列表

AI հարցազրույցների շարք 14. Vibe Coding-ի և Spec Coding-ի տարբերությունը?

Սա խնդիր է, որին բախվում են ծրագրավորողների մեծ մասը։ Vibe Coding-ը և Spec Coding-ը ներկայումս մեծ լեզվական մոդելների (LLM) օգնությամբ ծրագրավորման երկու տարբեր աշխատանքային պարադիգմներ են։ Նրանց հիմնական տարբերությունն այն է՝ AI-ին տրվող «մուտքը» անորոշ զգացողություն է, թե ճշգրիտ ճշգրտում:


1. Խոհարարության օրինակով պարզ նկարագրել Vibe Coding-ի և Spec Coding-ի տարբերությունը

  • Vibe Coding = Դուք ընկերոջն ասում եք «Ուզում եմ կծուծ ախորժակ բացող բան», ընկերը իր զգացողությամբ մի ուտեստ է տապակում, դուք համտեսում եք ու ասում «մի քիչ էլ աղ ավելացրու», նա էլ ավելացնում է աղ: Համը կարող է զարմանալի լինել, բայց մեկ այլ խոհարարի մոտ բոլորովին այլ կստացվի:
  • Spec Coding = Դուք գրում եք բաղադրատոմսը՝ «Փիցուան չիլի մածուկ 20գ, տավարի միս 150գ, նեխուր 50գ, բարձր կրակի վրա տապակել 2 րոպե, մատուցելուց առաջ ավելացնել 3գ շաքարավազ»: Տարբեր խոհարարներ ըստ բաղադրատոմսի պատրաստում են, համը գրեթե նույնն է լինում:

2. Երկուսի սահմանումները

Չափանիշ Vibe Coding Spec Coding
Այլ անվանումներ Զգացողությամբ կառավարվող ծրագրավորում, հուշումով իմպրովիզ Ճշգրտումներով կառավարվող ծրագրավորում, փաստաթղթերի առաջնահերթություն
Մուտքի ձև «Օգնիր ինձ գեղեցիկ մուտքի էջ պատրաստել, տեխնոլոգիական զգացողությամբ» «Մուտքի էջը պետք է պարունակի էլ. փոստի/գաղտնաբառի մուտքագրման դաշտ, հիշել ինձ նշան, հաստատել կոճակ; առջևի մասում օգտագործել React + Tailwind; ձևի ստուգման կանոններ՝ էլ. փոստի ձևաչափ, գաղտնաբառի երկարություն≥8; անհաջողության դեպքում ցուցադրել կարմիր հուշում...»
AI-ի օգտագործման ձև Երկխոսական, կրկնողական՝ տալ մոտավոր ուղղություն → տեսնել արդյունքը → կարգավորել Ինժեներական՝ նախ գրել մանրամասն PRD/տեխնիկական ճշգրտում → AI-ն հիմնվելով ճշգրտման վրա ստեղծում է կոդ
Մարդու մասնակցություն Ցածր՝ կախված AI-ի ստեղծարարությունից, մարդը միայն պատասխանատու է «զգացողության ճիշտ լինելու» համար Բարձր՝ մարդը նախ ավարտում է դիզայնը/ճարտարապետությունը, AI-ն հիմնականում կատարում է
Տիպիկ սցենարներ Արագ նախատիպեր, անձնական փոքր գործիքներ, UI հետազոտում, ստեղծարար կոդ գրել Արտադրական մակարդակի համակարգեր, թիմային աշխատանք, պահանջում է պահպանելի/թեստավորվող կոդ

3. Աշխատանքային հոսքերի համեմատություն

Vibe Coding-ի հոսք

  1. Անորոշ գաղափար՝ «Ուզում եմ գրել վեբ քերիչ, որը կհավաքի Zhihu-ի թեժ ցուցակը»:
  2. Գրել առաջին prompt-ը՝ ուղղակի AI-ին կոդ ստեղծելու հանձնարարություն:
  3. Գործարկել → սխալ → սխալի հաղորդագրությունը տեղադրել → AI-ն ուղղում է:
  4. Ինտերֆեյսը տգեղ է զգում → «Կոճակը մի քիչ կլորացրու, ֆոնը դարձրու գրադիենտ կապույտ» → AI-ն փոխում է:
  5. Ֆունկցիան պակասում է → «Ավելացրու CSV-ում պահպանելու ֆունկցիա» → AI-ն ավելացնում է:
  6. Կրկնել 3-5 քայլերը մինչև «զգացողությունը բավարար է»:

Spec Coding-ի հոսք

  1. Գրել ճշգրտման փաստաթուղթ՝ հստակեցնել մուտք/ելք, տվյալների կառուցվածք, սխալների մշակում, կատարողականի պահանջներ, ոչ ֆունկցիոնալ պահանջներ (օրինակ՝ գրանցում, սահմանափակում):
  2. Ճշգրտումը բաժանել առաջադրանքների՝ օրինակ՝ առաջադրանք 1. իրականացնել fetch_hot_topics() ֆունկցիան՝ հետևելով spec-ի API ստորագրությանը:
  3. Յուրաքանչյուր առաջադրանք տալ AI-ին իրականացնելու՝ prompt-ում ներառել ֆունկցիայի ստորագրություն, մեկնաբանություններ, թեստային դեպքերի սպասելիքներ:
  4. Մարդու կողմից ստուգում և վավերացում՝ ապահովել, որ համապատասխանում է ճշգրտմանը, գործարկել միավորային թեստերը:
  5. Ինտեգրում և ռեգրեսիա:

4. Առավելությունների և թերությունների համեմատություն

Հատկանիշ Vibe Coding Spec Coding
Սկսելու արագություն Շատ արագ, մի քանի րոպեում ստեղծվում է նախատիպ Դանդաղ, պահանջվում է փաստաթղթեր գրել, առաջադրանքներ բաժանել
Կոդի որակ Ցածր (հնարավոր է ավելորդ, անհամապատասխան, թաքնված սխալներ) Բարձր (ընթեռնելի, թեստավորվող, համապատասխանում է ճարտարապետությանը)
Պահպանելիություն Վատ, հետագայում եկողները չեն հասկանում «ինչու է այդպես գրված» Լավ, ճշգրտումը հենց փաստաթուղթ է
LLM-ից կախվածություն Շատ բարձր, մոդելը փոխելու դեպքում արդյունքը կարող է լրիվ տարբեր լինել Միջին, եթե ճշգրտումը հստակ է, տարբեր մոդելները կարող են նման կառուցվածք արտադրել
Վրիպազերծման դժվարություն Դժվար, չգիտես որտեղից է տրամաբանությունը Հեշտ, ստուգել ըստ spec-ի յուրաքանչյուր կետ
Հարմար է թիմային աշխատանքի համար Գրեթե անհնար Հնարավոր է (spec-ը որպես հաղորդակցման պայմանագիր)
Արդյունքի որոշակիություն Ցածր, յուրաքանչյուր զրույցի արդյունքը կարող է փոխվել Բարձր, նույն spec-ը տալիս է կայուն արդյունք

5. Իրական կյանքում օգտագործման խորհուրդներ

«Աշխատանքում vibe coding-ը և spec coding-ը չեն ընտրվում մեկը մյուսի փոխարեն, այլ խառնված օգտագործվում՝ համապատասխան սցենարում կիրառելով համապատասխան մոտեցումը:
- Հետազոտական փուլում (երբ տեխնոլոգիայի ընտրությունը կամ UI ոճը հստակ չէ), օգտագործել Vibe Coding՝ արագ ստուգելու տարբեր լուծումներ, օրինակ՝ «Tailwind-ով գրել քարտի բաղադրիչ ու տեսնել էֆեկտը»:
- Երբ լուծումը որոշվում է, անմիջապես անցնել Spec Coding-ի՝ հաջողված նախատիպը հակադարձ կարգով կազմել հստակ ճշգրտման (մուտք/ելք, սահմանային պայմաններ, սխալների մշակում), այնուհետև AI-ին կամ մարդուն հանձնարարել խստորեն հետևելով spec-ին վերագրել արտադրական կոդը:
Մաքուր Vibe ռեժիմը հարմար է միայն միանգամյա սկրիպտների կամ ներքին փոքր գործիքների համար; երկարաժամկետ պահպանման, բազմակի օգտագործման համակարգերի համար Spec Coding-ը պարտադիր է:»

评论

暂无已展示的评论。

发表评论(匿名)