teach-me-ai / Fast-Track / FT-1
⟵ กลับหน้า Roadmap
FAST-TRACK · FT-1

AI ช่วยงาน Dev: สั่งให้เป็น ใช้ได้ทันที

⏱️ ~12 นาที 🎯 ใช้ AI (เช่น Claude Code) เป็นเครื่องมือคู่งานจริง

บทนี้เป็นทางลัด ไม่ท่องทฤษฎี เอาไปใช้กับงานเขียนโค้ดของคุณได้เลยตั้งแต่วันนี้ เป้าหมายเดียว: สั่ง AI ให้ได้ผลลัพธ์ที่ใช้งานได้จริง โดยรู้ว่าตรงไหนเชื่อได้ ตรงไหนต้องตรวจ

AI ช่วยงาน dev ทำอะไรได้บ้าง

เครื่องมืออย่าง Claude Code ไม่ได้แค่เติมโค้ดให้ (auto-complete) แต่รับงานเป็นก้อน ๆ ได้ ลองมองมันเป็น pair (คู่เขียนโค้ด) ที่สั่งงานเป็นภาษาคนได้:

งานตัวอย่างที่สั่งได้จริง
เขียนโค้ด (write)"เขียน endpoint NestJS รับ upload ไฟล์ CSV แล้ว validate ด้วย Zod"
วางแผน (plan)"วางแผนก่อน ยังไม่ต้องเขียน: จะเพิ่ม rate limit ให้ API ยังไง"
ออกแบบโครงสร้าง (design)"ออกแบบ module structure สำหรับระบบ notification ใน Go"
ปรับปรุงโค้ด (refactor)"แยกฟังก์ชันนี้ออกเป็นหลายส่วน ลด nesting ให้เหลือไม่เกิน 2 ชั้น"
หาบั๊ก (debug)"เทสต์นี้ fail อ่าน stack trace นี้แล้วบอกว่าน่าจะพังตรงไหน"
เขียนเทสต์ (test)"เขียน unit test ครอบ service นี้ให้ครบ edge case"

เทคนิคสั่งงานให้ได้ผลดี (สำคัญสุด)

ผลลัพธ์ห่วยหรือดี 80% มาจาก วิธีสั่ง ไม่ใช่ตัวโมเดล จำเวิร์กโฟลว์ (workflow) 5 ขั้นนี้ให้ขึ้นใจ:

1. Context ให้ข้อมูลพอ 2. Plan ขอแผนก่อน code 3. Step ทำทีละขั้น 4. Example ให้ตัวอย่าง 5. Review แก้เป็นรอบ วนรอบใหม่จนพอใจ
ให้ context → ขอ plan → ทำทีละขั้น → ให้ตัวอย่าง → รีวิว/แก้เป็นรอบ (iterate)
  • ให้ context (บริบท) ที่พอ: บอก stack (TS/NestJS/Go), ไฟล์ที่เกี่ยว, ข้อจำกัด และเป้าหมาย ยิ่งชัดยิ่งตรง
  • ขอ plan ก่อนลงมือ code: ให้มันร่างแผนก่อน คุณตรวจแผนได้เร็วกว่าตรวจโค้ดทั้งก้อน
  • ทำทีละขั้น (step by step): งานใหญ่แตกเป็นชิ้นเล็ก แต่ละชิ้นตรวจง่าย แก้ง่าย
  • ให้ตัวอย่าง (example): แปะ pattern โค้ดที่คุณอยากได้ 1 ชิ้น มันจะเลียนสไตล์โปรเจกต์คุณ
  • รีวิว/แก้เป็นรอบ (iterate): อย่าคาดหวังถูกครั้งเดียว บอกจุดที่ผิดแล้วให้มันแก้ต่อ

เคล็ดลับให้ context ที่ทรงพลังสุด: ให้ผ่านไฟล์และตัวอย่างจริง แทนที่จะอธิบายด้วยคำพูดยาว ๆ ให้ชี้ไฟล์ที่เกี่ยว หรือแปะโค้ด pattern ที่ต้องการ 1 ชิ้น แล้วสั่งว่า "ทำแบบเดียวกับไฟล์นี้" — ตรงและเร็วกว่ามาก

Prompt ดี vs ห่วย สำหรับงาน dev จริง

ความต่างอยู่ที่ context และการขอให้วางแผนก่อน ลองเทียบ:

❌ ห่วย✅ ดี
"เขียน API auth ให้หน่อย" "โปรเจกต์ NestJS + Prisma อยู่แล้ว วางแผนก่อน ยังไม่ต้องเขียน: เพิ่ม JWT login endpoint ที่ hash password ด้วย argon2 และ validate ด้วย class-validator"
"โค้ดนี้บั๊ก แก้ให้ที" "ฟังก์ชันนี้ควรคืน user ที่ active เท่านั้น แต่มันคืนทุก user นี่คือโค้ดและ test ที่ fail: ... ชี้ต้นเหตุก่อน แล้วค่อยเสนอวิธีแก้"
"refactor ให้สวยหน่อย" "แยกฟังก์ชัน 80 บรรทัดนี้เป็นฟังก์ชันย่อย ชื่อสื่อความหมาย ลด nesting เหลือไม่เกิน 2 ชั้น ห้ามเปลี่ยนพฤติกรรม แล้วบอกว่าแยกอะไรบ้าง"

ตัวอย่าง prompt ที่ดีในรูปแบบสั่ง Claude Code จริง:

# สั่งให้วางแผนก่อน ไม่ให้เขียนโค้ดทันที
วางแผนการเพิ่ม feature "soft delete" ให้ UserService (Go)
บริบท: ใช้ GORM, มี field deleted_at อยู่แล้ว
ข้อกำหนด: query ปกติต้องไม่เห็น record ที่ถูกลบ
อย่าเพิ่งเขียนโค้ด ขอ plan เป็นขั้น ๆ ให้ผมรีวิวก่อน

กับดักที่ต้องระวัง

สองอย่างนี้ทำให้ dev ส่วนใหญ่เจ็บตัว:

  1. เชื่อโค้ดที่ได้โดยไม่ตรวจ: AI มั่นใจได้แม้ตอนผิด — เรียกว่า hallucination (การแต่งข้อมูลที่ดูจริงแต่ผิด) ชื่อ method, package, หรือ API ที่มันเรียกอาจไม่มีอยู่จริง
  2. งานใหญ่เกินไม่ยอมแตกย่อย: โยนงานก้อนมหึมาให้ครั้งเดียว ผลที่ได้จะกว้างเกินตรวจ พังก็หาต้นเหตุยาก — แตกเป็นขั้นเล็กเสมอ
⚠️

ตรวจโค้ดที่ AI เขียนเสมอ ก่อน merge: มันอาจ hallucinate (แต่งขึ้นแบบมั่นใจ) ชื่อ API, พารามิเตอร์, หรือ import ที่ไม่มีจริง รันเทสต์และอ่านโค้ดทุกครั้ง — ถือว่าเป็นโค้ดจาก junior ที่ต้อง review เสมอ

🎯 แบบฝึกหัด
  1. เลือกฟีเจอร์เล็ก ๆ ในโปรเจกต์คุณ (เช่น เพิ่ม endpoint GET /health หรือ validate 1 field)
  2. สั่ง AI ว่า "วางแผนก่อน ยังไม่ต้องเขียนโค้ด" พร้อมให้ context: stack + ไฟล์ที่เกี่ยว + เป้าหมาย
  3. อ่านแผนที่ได้ ถ้ามีขั้นไหนไม่ชัด/ผิด ให้บอกแก้ แล้วค่อยสั่งให้เขียนโค้ดทีละขั้น
  4. เมื่อได้โค้ด ให้รันเทสต์และไล่อ่านหา hallucination ก่อนตัดสินว่าใช้ได้

เมื่อทำเสร็จ พิมพ์ /quiz FT-1 เพื่อทดสอบความเข้าใจ