Section 1: Lab: เตรียมเครื่องมือบน Windows และ macOS
- ติดตั้ง Flutter SDK 3.47 บน Windows และ macOS พร้อมตั้งค่า PATH
- ติดตั้ง VS Code กับ Flutter Extension และ Android Studio สำหรับ Android SDK
- ติดตั้ง Xcode และ CocoaPods บน macOS สำหรับการรันบน iOS
- สร้าง Android Emulator และ iOS Simulator แล้วทดสอบรันแอปตัวอย่าง
- ตรวจความพร้อมของระบบด้วย flutter doctor และแก้ปัญหาที่เจอบ่อย
Section 2: Lab: อัปเดตภาษา Dart 3 ที่ใช้ในงานจริง
- Sound Null Safety และการจัดการค่า null อย่างปลอดภัย
- Records, Pattern Matching และ switch แบบ Expression
- Class Modifiers: sealed, final, base และ interface ใช้เมื่อไร
- Asynchronous Programming ด้วย Future, async, await และ Stream
- จัดการ Exception และวันที่เวลาด้วย DateTime และ Package intl
Section 3: Lab: วางโครงสร้างโปรเจกต์ให้รองรับแอปใหญ่
- แยกโฟลเดอร์ screens, widgets, models, services, theme และ utils
- เก็บค่าคงที่ สี และสไตล์ไว้ที่เดียว แล้วเรียกใช้ทั่วแอป
- สร้าง Custom Widget ที่นำกลับมาใช้ซ้ำได้ทั้งโปรเจกต์
- กำหนด Theme ด้วย ColorScheme.fromSeed และรองรับ Dark Mode
- ใช้ flutter analyze และ Lint รักษาคุณภาพโค้ด และนำโครงนี้ไปเริ่มโปรเจกต์อื่น
Section 4: Lab: Layout หลักด้วย NavigationBar, Drawer และ TabBar
- เมนูด้านล่างด้วย NavigationBar แบบ Material 3
- เมนูด้านข้างด้วย NavigationDrawer พร้อมส่วนหัวและหมวดหมู่
- แบ่งหมวดเนื้อหาด้วย TabBar และ TabBarView
- รวมทั้งสามแบบในแอปเดียวโดยไม่ให้ผู้ใช้สับสน
- Lab: สร้างโครงหน้าจอหลักของแอปข่าว
Section 5: Lab: Layout ที่ปรับตามมือถือและแท็บเล็ต
- แนวคิด Adaptive Layout และการกำหนด Breakpoint
- ใช้ LayoutBuilder และ MediaQuery.sizeOf ตรวจขนาดหน้าจอ
- สลับ NavigationBar เป็น NavigationRail เมื่อจอกว้าง
- แสดงรายการกับรายละเอียดคู่กันบนแท็บเล็ต
- Lab: ทดสอบแอปบนมือถือ แท็บเล็ต และการหมุนจอ