Dự án cuối 4: áp dụng patterns và review chéo

Hoàn thiện dự án cuối khóa: áp dụng patterns đúng chỗ, review chéo, sửa theo feedback và đóng gói bản demo.
Chuyên giaDesign pattern ~120 phút

Giới thiệu

Bạn hoàn thiện dự án cuối khóa. Sửa nhỏ từng bước có kiểm thử.

Kiến thức cần nhớ

Áp patterns đúng chỗ

  • Liệt kê mùi hôi trong code trước.
  • Mỗi pattern trị một mùi cụ thể.
  • Ví dụ đời thường: giống uống thuốc đúng bệnh.
  • Gỡ pattern ra mà mùi quay lại mới là cần thiết.

Review chéo

  • Review chéo là đọc code cho nhau.
  • Ghi ít nhất 10 phát hiện có mức độ.
  • Ví dụ đời thường: giống chấm bài chéo trong lớp.
  • Cả hai chiều đều ghi biên bản.

Sửa và đóng gói demo

  • Sửa lỗi đúng trước, làm đẹp sau.
  • Mỗi lần sửa chạy lại kiểm thử và benchmark.
  • Ví dụ đời thường: giống vá lốp xong phải chạy thử.
  • Đóng gói một lệnh chạy kèm kịch bản 10 phút.
# strategy thay thuật toán demo
class CachNhanh:  # một cách làm
    def chay(self):
        return "chạy nhanh"  # bản nhanh
class CachChuan:  # cách khác
    def chay(self):
        return "chạy chuẩn"  # bản chuẩn

Ví dụ

  • 3 patterns -> mỗi pattern truy tới một mùi gốc.
  • Biên bản review -> đủ 10 phát hiện có vị trí.

💻 Bài tập

Dự án cuối, ngày 4. Nộp vào repo final-project/.

Bài 1: Mùi hôi và pattern

  1. Liệt kê 5 "mùi hôi" trong code dự án kèm vị trí file:dòng (hàm quá dài, if/else theo kiểu, lặp code, lớp ôm nhiều việc, phụ thuộc cứng).
  2. Chọn 3 mùi, trị bằng pattern phù hợp. Mỗi lần refactor 1 commit, test và benchmark trước sau phải giống nhau.
  3. PATTERNS.md: bảng mùi, pattern, lý do, và kiểm chứng "gỡ pattern ra thì mùi quay lại".

Bắt buộc: có ít nhất 1 mùi bạn quyết định không trị bằng pattern, và giải thích.

Bài 2: Review chéo

  1. Đổi repo với 1 người khác (hoặc tự review code sau khi nghỉ 1 ngày).
  2. Biên bản review ít nhất 10 phát hiện, mỗi phát hiện có: vị trí, mức độ (lỗi / hiệu năng / dễ đọc / tài liệu), đề xuất.
  3. Sửa các phát hiện mức "lỗi" trước. Ghi phát hiện nào không sửa và vì sao.

Bài 3: Đóng gói demo (nâng cao)

  1. Một lệnh cài và chạy: make demo, docker compose up, hoặc script tương đương.
  2. Người khác clone repo sạch, chạy được trong 15 phút. Ghi lại mọi chỗ họ vấp và sửa README.
  3. Kịch bản demo 10 phút: vấn đề (2 phút), chạy sống (5 phút), số liệu (2 phút), hỏi đáp (1 phút).
  4. Chạy lại toàn bộ test và benchmark lần cuối, cập nhật BENCHMARK.md.

✅ Tiêu chí hoàn thành

  • 3 refactor có commit riêng, test và benchmark không đổi.
  • Biên bản review đủ 10 phát hiện.
  • Người khác chạy được demo từ repo sạch.
  • Kịch bản demo 10 phút viết sẵn.

❓ Câu hỏi ôn tập

  1. Pattern cần truy tới cái gì?
  2. Review chéo ghi mấy phát hiện?
  3. Sửa theo thứ tự nào?
  4. Cấm refactor kiểu gì giờ chót?

🌕 Bạn đã hoàn thành ngày 170. Làm hết bài tập phía trên rồi sang ngày tiếp theo.

Bớt paste mù, hiểu sâu từng dòng mình viết.

180 Days Challenge. 180 ngày cai nghiện vibe code.