ข้ามไปยังเนื้อหา

มาตรฐาน Code Review

PR ของต้องให้ใคร Review
INTERN (ทุก PR)DEV (ทุกครั้ง)
INTERN แก้บัค MediumDEV (ทุกครั้ง)
INTERN แก้บัค Lowไม่จำเป็น (แต่แนะนำ)
DEVDEV คนอื่น หรือ self-review

  • Code ทำงานตรงตาม plan.md / requirements
  • ไม่มี logic errors
  • Edge cases ถูก handle
  • มี unit test
  • อัพเดทไฟล์ test case กลางแล้ว
  • Unit test ผ่านทั้งหมด
  • ครอบคลุม happy path, edge cases, error cases
  • ชื่อตัวแปร/function สื่อความหมาย
  • ไม่มี code ซ้ำซ้อน (DRY)
  • ขนาด function เหมาะสม (ไม่ยาวเกินไป)
  • มี comments เฉพาะที่จำเป็น
  • ไม่มี hardcoded secrets/passwords
  • Input validation ทุกจุดที่รับข้อมูลจากผู้ใช้
  • ไม่มีช่องโหว่ SQL injection, XSS
  • ใช้ parameterized queries
  • ไม่มี N+1 queries
  • ไม่มี memory leaks
  • ไม่มี unnecessary re-renders (React)

  • อธิบายเหตุผลว่า ทำไม ต้องแก้ (ไม่ใช่แค่บอกว่าผิด)
  • แนะนำวิธีแก้ พร้อมตัวอย่าง code
  • ชมสิ่งที่ทำได้ดี
  • วิจารณ์ตัวคน ให้วิจารณ์ code
  • ละเลยปัญหา เพราะไม่อยากขัดแย้ง
  • block PR เพราะ style preference ที่ไม่สำคัญ

// ดี ✅
"ตรงนี้ควรเพิ่ม try-catch เพราะ API call อาจ fail ได้
ถ้า fail แล้วไม่ catch จะทำให้ app crash ตัวอย่าง:
try { await fetchData(); } catch (e) { setError(e.message); }"
// ไม่ดี ❌
"code ผิด แก้ด้วย"