Đây là bài 5 của chương 2: Mô hình miền và quyền sở hữu, thuộc khóa demo System Design. Nội dung được dùng để trải nghiệm cấu trúc chương trình học; hãy thực hành trên dữ liệu và môi trường thử nghiệm riêng. Trong dự án xuyên suốt, bạn sẽ xây dựng bản thiết kế nền tảng học trực tuyến với danh mục, video, tiến độ và thông báo.
Mục tiêu cụ thể
Ranh giới miền giúp xác định nơi sở hữu dữ liệu và quy tắc. Bắt đầu bằng các khái niệm người dùng hiểu trước khi chọn database hay hàng đợi.
Bộ câu hỏi tự kiểm tra
- Vì sao mô hình miền và quyền sở hữu cần được xem xét riêng trong dự án System Design?
- Giải thích bằng lời của bạn: Ranh giới miền giúp xác định nơi sở hữu dữ liệu và quy tắc. Bắt đầu bằng các khái niệm người dùng hiểu trước khi chọn database hay hàng đợi.
- Phát hiện vấn đề trong tình huống: Chia service chỉ theo bảng dữ liệu dễ làm mọi tác vụ phải gọi nhiều hệ thống. Một modular monolith có thể là lựa chọn ban đầu hợp lý.
- Bạn sẽ giữ bằng chứng gì để chứng minh giải pháp hoạt động?
Tiêu chí chấm
- Mỗi dữ liệu có chủ sở hữu
- Luồng nghiệp vụ đi qua ranh giới rõ
- Không có nhiều nơi sửa cùng quy tắc
Bài mở rộng
Bắt đầu từ yêu cầu Vẽ ranh giới cho các miền và đánh dấu ai được ghi vào từng loại dữ liệu. Thay đổi quy mô, độ dài dữ liệu hoặc thứ tự thao tác. Chọn đúng một biến thể phù hợp với chương rồi dự đoán tác động trước khi thử. Ví dụ là công cụ để hiểu nguyên lý, không phải đáp án duy nhất.
Gợi ý tự đánh giá
- Mức 1: nhắc lại được khái niệm nhưng chưa tự thực hiện.
- Mức 2: tự hoàn thành ví dụ và giải thích các bước.
- Mức 3: xử lý được trường hợp biên và giải thích lựa chọn khác.
Nếu chưa đạt mức 2, quay lại bài thực hành thay vì chỉ đọc đáp án. Khi đã đạt mức 3, ghi lại một cách giải khác và so sánh độ đơn giản, khả năng kiểm chứng và giới hạn của hai phương án.
Lưu bằng chứng
Tạo bảng gồm ca thử, đầu vào, kết quả mong đợi, kết quả thực tế và kết luận. Chỉ đánh dấu hoàn thành sau khi từng tiêu chí có kết quả quan sát được; bài tự kiểm tra này không tự chấm điểm và không cấp chứng chỉ.