Bỏ qua để đến nội dung
Knowledge Hub

Code review: review và được review như một senior Trung cấp

Hai kiểu team review hỏng hay gặp nhất:

  • Team “LGTM”: PR 1.800 dòng được approve sau 4 phút. Bug double-charge lọt production vì không ai đọc tới hàm retry ở file thứ 23.
  • Team “gác cổng”: PR 40 dòng chờ 3 ngày, nhận 27 comment về dấu chấm phẩy, rồi bị yêu cầu “viết lại theo cách của anh”.

Cả hai đều tốn tiền. Cụm này là bộ quy tắc để review nhanh, có trọng tâm và không làm ai ghét nhau, cho cả người viết PR lẫn reviewer.

Đang tải diagram…

Phần Trả lời câu hỏi
Ưu tiên review Review để làm gì? Nhìn gì trước? Một PR đi từ draft tới merge thế nào?
Người viết PR PR to cỡ nào? Mô tả PR gồm gì? Tự review bắt được gì?
Người review Phản hồi nhanh cỡ nào? Đọc PR theo thứ tự nào? Khi nào approve kèm comment?
Viết comment Gắn nhãn mức độ ra sao? Comment tồi và tốt khác gì? Bất đồng thì xử lý thế nào?
Anti-pattern, metric Review hỏng trông ra sao? Đo gì mà không làm hỏng review? Ngoại lệ nào hợp lý?
Lỗi hay gặp Comment, mô tả PR và bug code nào hay lọt, và comment nào nên bắt chúng?
Câu hỏi Mặc định Lý do
Tiêu chuẩn để approve PR chắc chắn làm code tốt lên, dù chưa hoàn hảo Google: không có code hoàn hảo, chỉ có code tốt hơn
Nhìn gì trước Thiết kế, tính đúng → bảo mật, dữ liệu → test → dễ đọc → style Lỗi thiết kế phát hiện muộn là lỗi đắt nhất
Style, format Prettier, ESLint, CI lo; con người không comment Máy kiểm nhanh hơn người
Kích thước PR Một mục đích; ~100 dòng hợp lý, ~1.000 dòng thường quá lớn Số tham khảo của Google Small CLs
Thời gian phản hồi Tối đa một ngày làm việc Phần lớn phàn nàn về review biến mất khi review nhanh hơn
Comment không bắt buộc Gắn nhãn nit: / suggestion (non-blocking): Tác giả biết cái nào phải sửa
Bất đồng kéo dài Call sau 2 vòng comment (quy ước của cụm), ghi kết luận vào PR Thread dài không hội tụ

Tiếp theo: Ưu tiên review.