MyDiaryคอร์ส Flutter · 6 สัปดาห์ ทุกสัปดาห์
สัปดาห์ที่ 5 · งานมอบหมาย · การบ้าน
สารบัญหน้านี้

การบ้าน สัปดาห์ที่ 5:

ส่ง: คลิป ≤ 2 นาที — ตั้งชื่อ รหัสนักศึกษา_HW5


โจทย์

ทำแอปของตัวเอง (ธีมเดิม) ให้มี ระบบล็อกอิน + เก็บข้อมูลบน Firestore + แต่ละคนเห็นแค่ของตัวเอง + Security Rules

ต่อยอดจากสัปดาห์ 3 — เปลี่ยนจาก SQLite เป็น Firestore (cloud) + เพิ่มล็อกอิน

เกณฑ์ให้คะแนน (25 คะแนน)

ก. ระบบล็อกอิน (8)

ข้อ รายละเอียด คะแนน
ก1 สมัครสมาชิกด้วย Email/Password ได้ 2
ก2 เข้าสู่ระบบ/ออกจากระบบได้ 2
ก3 AuthGate — ล็อกอินอยู่ไปหน้าข้อมูล/ไม่อยู่ไปหน้า login อัตโนมัติ 2
ก4 จัดการ error (รหัสสั้น/อีเมลซ้ำ/รหัสผิด) แสดงข้อความเข้าใจง่าย 2

ข. Firestore CRUD ผูกผู้ใช้ (10)

ข้อ รายละเอียด คะแนน
ข1 Create — เพิ่มข้อมูลพร้อม userId 2
ข2 Read — StreamBuilder แสดงเฉพาะข้อมูลของตัวเอง (.where userId) 3
ข3 Update — แก้ไขได้ 2
ข4 Delete — ลบได้ (มียืนยัน) 2
ข5 จออัปเดตเรียลไทม์ (ไม่ต้อง reload) 1

ค. ความปลอดภัยและความเป็นส่วนตัว (7)

ข้อ รายละเอียด คะแนน
ค1 2 บัญชีเห็นข้อมูลคนละชุด (สาธิตในคลิป) 3
ค2 ตั้ง Security Rules เช็คเจ้าของ 3
ค3 โครงเดิม (รายการ/ฟอร์ม) ยังทำงานดี 1

เงื่อนไข: แอป build ผ่าน + ล็อกอินได้ + 2 บัญชีเห็นข้อมูลแยกกัน

หมายเหตุ: เก็บโปรเจกต์ไว้ — สัปดาห์หน้า (สุดท้าย) build เป็น APK ติดตั้งจริง