AI အင်တာဗျူး စီးရီး ၁၄: vibe coding နှင့် spec coding ကွာခြားချက်
ဒါဟာ ပရိုဂရမ်မာအများစု ရင်ဆိုင်နေရတဲ့ ပြဿနာပါ။ Vibe Coding နဲ့ Spec Coding ဆိုတာ လက်ရှိ LLM ကိုသုံးပြီး ကုဒ်ရေးတဲ့အခါမှာ ကွဲပြားတဲ့ အလုပ်ပုံစံနှစ်မျိုးဖြစ်ပါတယ်။ သူတို့ရဲ့ အဓိက ကွာခြားချက်ကတော့ AI ကို သင်ပေးတဲ့ 'input' က မရေရာတဲ့ ခံစားချက်လား၊ ဒါမှမဟုတ် တိကျတဲ့ သတ်မှတ်ချက်လား ဆိုတာပါ။
၁။ ဥပမာ ချက်ပြုတ်ခြင်းနဲ့ နှိုင်းယှဉ်ပြီး vibe coding နဲ့ spec coding ကွာခြားချက်ကို ရှင်းပြခြင်း
- Vibe Coding = သင်က သင့်သူငယ်ချင်းကို 'ငါ စပ်တဲ့ဟာစားချင်တယ်' လို့ပြောတယ်၊ သူက သူ့ခံစားချက်အတိုင်း ဟင်းတစ်ခွက်ချက်ပေးတယ်၊ သင်က မြည်းကြည့်ပြီး 'နည်းနည်းငန်သေးတယ်' လို့ပြောတယ်၊ သူက ဆပ်ထည့်တယ်။ အရသာက အံ့သြစရာကောင်းနိုင်ပေမယ့် တခြားသူငယ်ချင်းက ချက်ရင် လုံးဝကွဲပြားသွားလိမ့်မယ်။
- Spec Coding = သင်က ဟင်းချက်နည်းကို ရေးချတယ်- 'ပီပါ့သား ၂၀ ဂရမ်၊ အမဲသားလွှာ ၁၅၀ ဂရမ်၊ တရုတ်နံနံပင် ၅၀ ဂရမ်၊ မီးပြင်းနဲ့ ၂ မိနစ်ကြော်၊ မီးပိတ်ခါနီး သကြား ၃ ဂရမ်ထည့်' ဆိုပြီးတော့။ ချက်ပြုတ်သူအမျိုးမျိုးက ဒီနည်းအတိုင်းလိုက်လုပ်ရင် အရသာ တူညီမှုမြင့်မားတယ်။
၂။ အဓိပ္ပါယ်ဖွင့်ဆိုချက်များ
| Dimension | Vibe Coding | Spec Coding |
|---|---|---|
| နာမည်ပြောင် | ခံစားချက်မောင်းနှင်သည့် ပရိုဂရမ်ရေးခြင်း၊ prompt ကို လက်တန်းလုပ်ခြင်း | သတ်မှတ်ချက်မောင်းနှင်သည့် ပရိုဂရမ်ရေးခြင်း၊ စာရွက်စာတမ်းကို ဦးစားပေးခြင်း |
| input ပုံစံ | 'ကျွန်တော့်ကို လှပပြီး နည်းပညာဆန်တဲ့ login စာမျက်နှာတစ်ခုလုပ်ပေးပါ' | 'login စာမျက်နှာတွင် အီးမေးလ်/စကားဝှက်ထည့်ရန် အကွက်များ၊ ကျွန်ုပ်ကိုမှတ်ထားပါ checkbox၊ submit ခလုတ် ပါဝင်ရမည်။ frontend အတွက် React + Tailwind သုံးရမည်။ form validation စည်းမျဉ်းများ- အီးမေးလ်ပုံစံ၊ စကားဝှက်အရှည် ≥ ၈၊ မအောင်မြင်ပါက အနီရောင် သတိပေးချက်ပြရမည်...' |
| AI အသုံးပြုပုံ | စကားပြောဆိုမှုပုံစံ၊ ထပ်ခါတလဲလဲလုပ်ပုံ- အကြမ်းဖျင်းလမ်းကြောင်းပေးပါ → output ကြည့်ပါ → ပြန်ညှိပါ | engineering ပုံစံ- အသေးစိတ် PRD/နည်းပညာသတ်မှတ်ချက်ကို ဦးစွာရေးပါ → AI က သတ်မှတ်ချက်အတိုင်း ကုဒ်ထုတ်ပေးပါ |
| လူသားပါဝင်မှု | နည်း- AI က တီထွင်ဖန်တီးမှုကို မှီခိုပြီး လူက 'ဒီဟာ ကိုက်လား' ဆိုတာပဲကြည့်တယ် | များ- လူက ဒီဇိုင်း/ဗိသုကာကို ပြီးအောင်လုပ်ပြီးမှ AI က အဓိက execute လုပ်တယ် |
| ပုံမှန်အခြေအနေ | လျင်မြန်သော prototype, တစ်ကိုယ်ရည်သုံး tool, UI စူးစမ်းရှာဖွေခြင်း, တီထွင်ဖန်တီးမှုကုဒ်ရေးခြင်း | production-level system, အဖွဲ့လိုက်ပူးပေါင်းခြင်း, ထိန်းသိမ်းနိုင်/စမ်းသပ်နိုင်သော ကုဒ်လိုအပ်သောနေရာ |
၃။ လုပ်ငန်းအဆင့်ဆင့် နှိုင်းယှဉ်ခြင်း
Vibe Coding အဆင့်များ
၁။ မရေရာသော အတွေးအကြံ-'ကျွန်တော် Zhihu hot list ကိုဖမ်းယူတဲ့ crawler တစ်ခုရေးချင်တယ်'။
၂။ ပထမဆုံး prompt ရေးခြင်း- AI ကို တိုက်ရိုက်ကုဒ်ထုတ်ခိုင်းပါ။
၃။ Run → error → error ကို ပြန်ကူးထည့်ပါ → AI က ပြင်ပေးပါ။
၄။ UI က ရုပ်ဆိုးနေလို့ → 'အဲဒီခလုတ်ကို ဝိုင်းဝိုင်းလေးဖြစ်အောင်၊ background ကို gradient blue ပြောင်းပေးပါ' → AI က ပြင်ပေးပါ။
၅။ လုပ်ဆောင်ချက် မပြည့်စုံသေး → 'CSV သို့ သိမ်းဆည်းတဲ့ function တစ်ခုထပ်ထည့်ပေးပါ' → AI က ထည့်ပေးပါ။
၆။ အဆင့် ၃-၅ ကို 'အဆင်ပြေပြီ' လို့ ခံစားရတဲ့အထိ ထပ်လုပ်ပါ။
Spec Coding အဆင့်များ
၁။ သတ်မှတ်ချက်စာရွက်စာတမ်းရေးသားခြင်း- input/output, data structure, error handling, performance requirements, non-functional requirements (log, rate limiting) တို့ကို ရှင်းလင်းစွာ သတ်မှတ်ပါ။
၂။ သတ်မှတ်ချက်ကို task များခွဲပါ- ဥပမာ task 1: spec ပါ API signature အတိုင်း fetch_hot_topics() function ကို implement လုပ်ပါ။
၃။ တစ် task ချင်းစီအတွက် AI ကို implement လုပ်ခိုင်းပါ- prompt တွင် function signature, comment, test case မျှော်မှန်းချက်များ ပါဝင်ပါ။
၄။ လူက ပြန်လည်စစ်ဆေးပြီး အတည်ပြုခြင်း- သတ်မှတ်ချက်နှင့်ကိုက်ညီမှုရှိစေရန်၊ unit test ကို run ပါ။
၅။ ပေါင်းစပ်ခြင်းနှင့် regression။
၄။ အားသာချက်များနှင့် အားနည်းချက်များ နှိုင်းယှဉ်ခြင်း
| လက္ခဏာ | Vibe Coding | Spec Coding |
|---|---|---|
| စတင်အသုံးပြုရလွယ်ကူမှု | အလွန်မြန်သည်၊ မိနစ်ပိုင်းအတွင်း prototype ရနိုင် | နှေးသည်၊ စာရွက်စာတမ်းရေးရန်၊ task ခွဲရန် လိုအပ် |
| ကုဒ်အရည်အသွေး | နိမ့်သည် (ထပ်နေခြင်း၊ ကိုက်ညီမှုမရှိခြင်း၊ လျှို့ဝှက် bug များ ရှိနိုင်) | မြင့်သည် (ဖတ်ရလွယ်၊ စမ်းသပ်ရလွယ်၊ ဗိသုကာနှင့်ကိုက်ညီ) |
| ထိန်းသိမ်းနိုင်မှု | ဆိုးသည်၊ နောင်လာသူများ 'ဘာလို့ဒီလိုရေးထားလဲ' နားမလည်နိုင် | ကောင်းသည်၊ သတ်မှတ်ချက်က စာရွက်စာတမ်းဖြစ်သည် |
| LLM အပေါ် မှီခိုမှု | အလွန်မြင့်သည်၊ model ပြောင်းလျှင် output လုံးဝကွဲပြားသွားနိုင် | အလယ်အလတ်၊ သတ်မှတ်ချက်ရှင်းလင်းပါက model အမျိုးမျိုးကလည်း အလားတူဖွဲ့စည်းပုံထုတ်နိုင် |
| အမှားရှာရခက်ခဲမှု | ခက်ခဲသည်၊ ကုဒ်ရဲ့ logic ဘယ်ကလာမှန်းမသိ | လွယ်ကူသည်၊ spec အတိုင်း တစ်ခုချင်းစစ်နိုင် |
| အဖွဲ့လိုက်ပူးပေါင်းရန် သင့်တော်မှု | လုံးဝမဖြစ်နိုင်လောက် | ဖြစ်နိုင်သည် (spec က ဆက်သွယ်ရေးသဘောတူညီချက်ဖြစ်သည်) |
| Output တည်ငြိမ်မှု | နိမ့်သည်၊ စကားပြောတစ်ကြိမ်စီတွင် ရလဒ်ပြောင်းနိုင် | မြင့်သည်၊ တူညီသော spec က တည်ငြိမ်သော output ကိုထုတ်ပေးသည် |
၅။ လက်တွေ့ဘဝတွင် အသုံးပြုရန် အကြံပြုချက်များ
'အလုပ်တွင် vibe coding နဲ့ spec coding ကို တစ်ခုရွေးရမှာမဟုတ်ဘဲ ရောနှောသုံးသည်၊ သင့်တော်တဲ့အခြေအနေမှာ သင့်တော်တဲ့နည်းကိုသုံးပါ-
- စူးစမ်းရှာဖွေသည့်အဆင့် (နည်းပညာရွေးချယ်မှု သို့မဟုတ် UI style မသေချာသေးပါက) Vibe Coding ကို သုံး၍ ရွေးချယ်စရာများကို လျှင်မြန်စွာ စမ်းသပ်ပါ၊ ဥပမာ 'Tailwind နဲ့ card component တစ်ခုရေးပြီး ဘယ်လိုပုံလဲကြည့်ရအောင်'။
- ရွေးချယ်မှုကို သေချာပြီဆိုတာနဲ့ ချက်ချင်း Spec Coding ကို ပြောင်းပါ- အောင်မြင်တဲ့ prototype ကို ပြန်လှန်ပြီး ရှင်းလင်းတဲ့ spec (input output, boundary conditions, error handling) အဖြစ် မှတ်တမ်းတင်ပါ၊ ထို့နောက် AI (သို့မဟုတ် လူ) ကို spec အတိုင်း အတိအကျလိုက်ပြီး production-level ကုဒ်ကို ပြန်ရေးခိုင်းပါ။
Pure Vibe ပုံစံသည် တစ်ကြိမ်သုံး script သို့မဟုတ် အတွင်းရေး tool အတွက်သာ သင့်တော်သည်။ ရေရှည်ထိန်းသိမ်းရမည့်၊ လူများစွာသုံးမည့် system အတွက် Spec Coding သည် လိုအပ်ချက်ဖြစ်သည်။'
评论
暂无已展示的评论。
发表评论(匿名)