Texno Karvon
Bosh sahifa

Cheat-Sheet: AI Kodini Review Qilish Cheklisti

Modul 2, Dars 2.3 uchun material. AI yozgan HAR BIR kod uchun.

6 nuqtali cheklist

  • 1. Ishlaydimi? — happy path'ni rostdan ishga tushirib ko‘rdim (ko‘z bilan emas!)
  • 2. Edge case'lar — bo‘sh string, null/undefined, 0, manfiy son, katta hajm, unicode/emoji, parallel so‘rov: "bu kod nima bilan sindiriladi?"
  • 3. Xavfsizlik — foydalanuvchi inputi SQL/shell/eval'ga qo‘shilmagan; sirlar kodda emas, .env da
  • 4. Hallucination — har import package.json da bor; har metod hujjatda bor
  • 5. Uslubga moslik — naming, qatlamlar (config/handlers/services), xato ushlash loyiha uslubida
  • 6. Ortiqchalik — ishlatilmaydigan funksiya, keraksiz abstraktsiya, "kelajak uchun" kod o‘chirildi

Test-first workflow (5 qadam)

  1. Talabni yozing (CRAFT: Context + Action).
  2. AI'ga avval testlarni yozdiring: "Hali kod yozma. Shu talab uchun testlar: happy path + 4 edge case."
  3. Testlarni SIZ review qilasiz va kamida 1 ta o‘z "yovuz" case'ingizni qo‘shasiz. ← eng muhim qadam
  4. AI'ga kodni yozdiring: "Shu testlarni o‘tadigan minimal kod."
  5. Testlar yiqilsa: "Testlar qat’iy — kodni tuzat, testni emas."

"O‘ziga o‘zi imtihon" muammosi

AI bitta suhbatda kod yozib, keyin o‘shanga test yozsa — u kodini testlaydi, talabni emas (xato bo‘lsa, test o‘sha xatoni qonuniylashtiradi).

Himoya:

  • Har doim test → kod tartibida (teskarisi emas).
  • Testlarni alohida suhbatda yozdiring — "test yozuvchi" kod muallifini bilmasin.
  • Har to‘plamga o‘z edge case'ingizni qo‘shing.

Qizil bayroqlar (darhol to‘xtang)

  • Kod birinchi urinishda ishlamadi, AI "tuzatdim" dedi — qaytadan to‘liq review qiling (yamoq ustiga yamoq bo‘lyapti).
  • AI siz so‘ramagan katta refactoring qilib yubordi.
  • Notanish paket import qilingan — avval npm'da bor-yo‘qligini va yulduzlarini tekshiring.
  • catch bloki bo‘sh yoki faqat console.log — xato "yutilib" ketyapti.

Oltin qoidalar

Cheklist — ko‘z uchun. Testlar — mashina uchun. Ikkalasi birga — professional himoya.

Testni talab yozadi, kod emas.

AI yozadi — siz javob berasiz.