← 返回列表

AI seriyası 14: vibe coding və spec coding arasındakı fərq?

Bu, əksər proqramçıların qarşılaşdığı bir sualdır. Vibe CodingSpec Coding böyük dil modellərindən (LLM) istifadə edərək proqramlaşdırma zamanı iki fərqli iş üsuludur. Onların əsas fərqi: AI-ya verilən "giriş" qeyri-müəyyən bir hissdir, yoxsa dəqiq bir spesifikasiyadır.


1. Yemək bişirmək nümunəsi ilə vibe coding və spec coding arasındakı fərqi sadəcə izah edək

  • Vibe Coding = Dostunuza "Acılı bir şey istəyirəm" deyirsiniz, dostunuz hissiyyatına əsasən bir yemək bişirir, siz də dadıb "Bir az daha duzlu olsun" deyirsiniz, o da duz əlavə edir. Dadı möhtəşəm ola bilər, ancaq başqa bir dost bişirsə tamamilə fərqli olar.
  • Spec Coding = Resepti yazırsınız: "Pixian Doubanjiang 20q, mal əti dilimləri 150q, kərəviz sapı 50q, yüksək odda 2 dəqiqə qızardın, ocaqdan götürməzdən əvvəl 3q şəkər əlavə edin". Fərqli aşpazlar eyni reseptə əməl etsə, dadı çox oxşar olar.

2. Hər ikisinin tərifi

Ölçü Vibe Coding Spec Coding
Digər adlar Hissiyyatla idarə olunan proqramlaşdırma, prompt improvizasiyası Spesifikasiya ilə idarə olunan proqramlaşdırma, sənəd birinci
Giriş forması "Mənə gözəl bir giriş səhifəsi düzəlt, texnologiya hissi olsun" "Giriş səhifəsi e-poçt/şifrə qutuları, 'Məni xatırla' qutusu və təsdiq düyməsi daxil olmaqla; frontend React + Tailwind istifadə etsin; form yoxlama qaydaları: e-poçt formatı, şifrə uzunluğu ≥8; uğursuz olduqda qırmızı xəta mesajı göstər..."
AI istifadə tərzi Dialoq əsaslı, iterativ: təxmini istiqamət ver → nəticəyə bax → yenidən tənzimlə Mühəndislik: əvvəlcə ətraflı PRD/texniki spesifikasiya yaz → AI spesifikasiyaya əsasən kod yaradır
İnsan iştirakı Aşağı: AI-nın yaradıcılığına güvənir, insan yalnız "düzgün hiss edirmi?" deyə yoxlayır Yüksək: insan əvvəlcə dizayn/memarlığı tamamlayır, AI əsasən icra edir
Tipik ssenarilər Sürətli prototip, fərdi alətlər, UI kəşfiyyatı, yaradıcı kod yazma İstehsal səviyyəli sistemlər, komanda işi, davamlı/test edilə bilən kod tələb edən layihələr

3. İş axınlarının müqayisəsi

Vibe Coding prosesi

  1. Qeyri-müəyyən fikir: "Zhihu trendlərini çəkən bir skript yazmaq istəyirəm."
  2. İlk promptu yaz: Birbaşa AI-dan kod yaratmasını istə.
  3. İşə sal → xəta → xətanı geri yapışdır → AI düzəldir.
  4. İnterfeys çirkin görünür → "Düyməni daha yumru et, fonu gradient mavi et" → AI dəyişir.
  5. Funksiya çatışmır -> "CSV-yə saxlama funksiyası əlavə et" -> AI əlavə edir.
  6. 3-5 addımlarını "kifayət qədər yaxşıdır" hiss edənə qədər təkrarla.

Spec Coding prosesi

  1. Spesifikasiya sənədini yaz: Giriş/çıxış, məlumat strukturu, xəta idarəsi, performans tələbləri, qeyri-funksional tələblər (log, hədd tənzimləmə) dəqiq müəyyən olunsun.
  2. Spesifikasiyanı tapşırıqlara böl: Məsələn, tapşırıq 1: fetch_hot_topics() funksiyasını həyata keçir, spesifikasiyadakı API imzasına uyğun.
  3. Hər tapşırığı AI-ya həyata keçirt: promptda funksiya imzası, şərhlər, test gözləntiləri olsun.
  4. İnsan tərəfindən yoxlama və təsdiq: Spesifikasiyaya uyğunluğu yoxla, vahid testləri işə sal.
  5. İnteqrasiya və reqressiya.

4. Üstünlük və çatışmazlıqların müqayisəsi

Xüsusiyyət Vibe Coding Spec Coding
Başlama sürəti Çox sürətli, dəqiqələr ərzində prototip Yavaş, sənəd yazmaq, tapşırıqlara bölmək lazımdır
Kod keyfiyyəti Aşağı (artıqlıq, uyğunsuzluq, gizli səhvlər ola bilər) Yüksək (oxunaqlı, test edilə bilən, memarlığa uyğun)
Davamlılıq Zəif, sonradan gələn "niyə belə yazılıb" anlamır Yaxşı, spesifikasiya sənədi rolunu oynayır
LLM-ə bağlılıq Çox yüksək, model dəyişəndə çıxış tamamilə fərqli ola bilər Orta, spesifikasiya aydındırsa, fərqli modellər oxşar struktur yarada bilər
Debug çətinliyi Çətin, kodun haradan gəldiyi bəlli deyil Asan, spesifikasiyaya uyğun yoxlanılır
Komanda işinə uyğunluq Demək olar ki, mümkün deyil Mümkündür (spesifikasiya ünsiyyət vasitəsi kimi)
Nəticə dəqiqliyi Aşağı, hər dialoqda nəticə dəyişə bilər Yüksək, eyni spesifikasiya sabit çıxış verir

5. Real həyatda istifadə tövsiyələri

"İş yerində vibe coding və spec coding arasında seçim etmək məcburiyyətində deyilsiniz, əksinə qarışıq istifadə edərək uyğun ssenaridə uyğun üsulu tətbiq edin:
- Kəşfiyyat mərhələsində (texnologiya seçimi və ya UI üslubu qeyri-müəyyən olduqda) Vibe Coding istifadə edərək müxtəliz variantları tez yoxlayın, məsələn 'Tailwind ilə bir kart komponenti yaz, görək necə görünür'.
- Plan müəyyənləşdikdən sonra dərhal Spec Coding-ə keçin: uğurlu prototipi tərsinə aydın spesifikasiyaya (giriş/çıxış, sərhəd şərtləri, xəta idarəsi) çevirin, sonra AI və ya insanın ciddi şəkildə spesifikasiyaya əsasən istehsal kodunu yenidən yazmasını istəyin.
Saf Vibe rejimi yalnız birdəfəlik skriptlər və ya daxili alətlər üçün uyğundur; uzun müddət dəstəklənəcək, çox istifadəçili sistemlər üçün Spec Coding məcburidir."

评论

暂无已展示的评论。

发表评论(匿名)