The "One Shot" Fallacy
Sai lầm lớn nhất của người mới (Newbie): Cố gắng paste toàn bộ bản mô tả dự án (PRD) dài 10 trang vào khung chat và hy vọng Agent sẽ "phun" ra một app hoàn chỉnh trong 1 cú click.
Kết quả:
- Agent bị quá tải (Context limit overload).
- Code bị ảo giác (Hallucination), import những thư viện không tồn tại.
- Logic rời rạc, thiếu kết nối.
- Và quan trọng nhất: Bạn mất kiểm soát. Khi 50 file được tạo ra cùng lúc, việc debug là ác mộng.
Nguyên tắc: Divide and Conquer (Chia để trị)
Hãy tưởng tượng bạn đang ăn một con voi. Bạn không thể nuốt chửng. Bạn phải xẻ thịt từng miếng nhỏ.
Quy trình Decomposition (Phân rã):
Phase 1: Database & Foundation (Nền móng)
- Prompt 1: "Thiết lập cấu trúc project Next.js + Tailwind."
- Prompt 2: "Tạo file Supabase Client và định nghĩa Types database."
Phase 2: Core Logic (Backend/API)
- Prompt 3: "Viết Server Action để xử lý đăng ký User."
- Prompt 4: "Viết hàm fetch data Courses từ DB."
Phase 3: UI/UX (Mặt tiền)
- Prompt 5: "Tạo component
CourseCardđể hiển thị thông tin." - Prompt 6: "Tạo trang listing
/courses, sử dụngCourseCard, hiển thị Grid."
The "One Window - One Feature" Rule
Trong mỗi phiên làm việc với Agent (mỗi bài chat), hãy cố gắng tuân thủ quy tắc: Chỉ làm việc trên 1 tính năng hoặc 1 màn hình duy nhất.
Nếu bạn thấy mình đang prompt: "Hãy sửa lỗi CSS ở Header VÀ thêm logic tính tiền ở trang Checkout", hãy dừng lại.
- Tách thành 2 prompts.
- Tách thành 2 lần commit.
Việc này giúp Agent tập trung toàn bộ "trí lực" (attention mechanism) vào vấn đề cụ thể, giảm thiểu rủi ro xung đột code.
Dấu hiệu bạn đang tham lam (Greedy Prompting)
- Prompt dài quá màn hình cuộn 3 lần.
- Yêu cầu Agent sửa > 5 file không liên quan đến nhau.
- Kết quả trả về bị cắt giữa chừng (Token limit hit).
🛡 Lời khuyên: Đi chậm để đi nhanh. Mỗi bước nhỏ (Baby step) mà chính xác sẽ nhanh hơn nhiều so với việc chạy một bước dài rồi ngã sấp mặt và phải làm lại từ đầu.
