Buổi 05 — Lý thuyết: Firebase, bình luận và tệp đính kèm
Mục tiêu buổi học
- Phân biệt dữ liệu cục bộ và dữ liệu trên mây
- Hiểu Firestore lưu công việc, bình luận và lịch sử
- Hiểu Storage lưu nội dung tệp
- Xử lý các trạng thái loading, error và empty
1. Vì sao cần dữ liệu trên mây?
Dữ liệu gắn trong code chỉ tồn tại trên một máy. Một app cộng tác cần mọi thành viên thấy thay đổi mới nhất mà không phải cài lại app.2. Firestore và Storage
Metadata tệp gồm tên, loại, kích thước, URL, người tải lên và thời gian. Không lưu toàn bộ file vào Firestore.
3. Mô hình dữ liệu tối thiểu
4. Luồng upload an toàn
- Người dùng chọn tệp.
- App kiểm tra loại và dung lượng.
- App tải nội dung lên Storage.
- App lưu metadata vào công việc.
- App hiển thị tiến độ hoặc lỗi để thử lại.
5. Bình luận là dữ liệu cộng tác
Mỗi bình luận cần nội dung, tác giả, thời gian vàtaskId. Nếu hỗ trợ @mention, app cần lưu người được nhắc để tạo thông báo ở buổi 07.
6. Trạng thái mạng bắt buộc
Mọi màn hình đọc hoặc ghi dữ liệu cần phản hồi cho người dùng khi đang tải, thành công, lỗi và không có dữ liệu.Tóm tắt buổi học
- Firestore lưu dữ liệu có cấu trúc; Storage lưu tệp.
- Bình luận, tệp và hoạt động đều gắn với một công việc.
- Upload cần validation, tiến độ và khả năng thử lại.