Bước 5: Phác Thảo Mô Hình Dữ Liệu
Hầu hết các ứng dụng thực ra là về dữ liệu: bạn lưu trữ cái gì và các phần liên hệ với nhau ra sao. Một bản phác thảo mô hình dữ liệu nhanh giúp bạn tránh khỏi code rối rắm, không nhất quán sau này. Bạn không cần một sơ đồ cơ sở dữ liệu — một danh sách các trường (field) là đủ.
Với ứng dụng theo dõi sách, có một đối tượng chính — một Book:
Book
- id: unique string
- title: string
- author: string
- status: "to_read" | "reading" | "finished"
- rating: number 1–5 (only if finished)
- addedAt: date
Ngay cả bản phác thảo nhỏ này cũng làm rõ các quyết định: đánh giá chỉ tồn tại cho những cuốn sách đã đọc xong, trạng thái chỉ có một trong ba giá trị cố định, và mỗi cuốn sách đều có một id. Khi bạn đưa cái này cho AI, nó ngừng đoán mò tên trường và xây dựng một cách nhất quán.
Lý do cần chốt điều này sớm là vì tên trường sẽ rò rỉ khắp mọi nơi. Một khi AI viết code đọc book.rating, cái tên đó sẽ xuất hiện trong form, trong màn hình danh sách, trong lớp lưu trữ, và trong bất kỳ tính năng nào bạn thêm sau này. Nếu bạn để nó trôi dạt — rating ở chỗ này, stars ở chỗ khác, score ở chỗ thứ ba — bạn sẽ gặp phải những lỗi khó chịu để truy tìm. Một mô hình dữ liệu sáu dòng là bảo hiểm rẻ nhất chống lại điều đó.
Một khối đặc tả ngắn, có thể sao chép-dán được thường hoạt động tốt hơn văn xuôi đối với AI. Đây là cùng mô hình đó, được viết dưới dạng một bạn thực sự sẽ gửi:
Use this exact data shape for a book. Don't add fields I didn't list,
and don't rename these:
Book {
id — unique string, generated on creation
title — string, required
author — string, required
status — one of: "to_read" | "reading" | "finished"
rating — integer 1–5, present ONLY when status is "finished"
addedAt — ISO date string, set when the book is added
}
If you think a field is missing, ask me before adding it.
Câu cuối cùng đó — hỏi tôi trước khi thêm nó — đang làm một việc thực sự quan trọng. Nó biến AI từ một kẻ đoán mò thành một cộng sự, và giữ cho mô hình dữ liệu vẫn là của bạn.