Dart Foundations
Flutter คือ Dart
หัวข้อที่มีชื่อว่า “Flutter คือ Dart”ก่อนจะแตะ widget ตัวแรก เราเริ่มที่ภาษา เพราะ Flutter ทุกบรรทัดที่คุณเขียนคือ Dart รูปทรงของ framework — widget ที่ immutable, const constructor, async/await ใน build logic, mixin อย่าง SingleTickerProviderStateMixin — ล้วนเป็นผลโดยตรงจาก feature ของ Dart พอเข้าใจภาษาดีแล้ว Flutter ก็เลิกเป็นกองคาถาวิเศษ
โมดูลนี้ครอบคลุมอะไรบ้าง
หัวข้อที่มีชื่อว่า “โมดูลนี้ครอบคลุมอะไรบ้าง”| บทเรียน | สิ่งที่คุณจะได้เรียนรู้ |
|---|---|
| Dart language tour | type, variable, function, collection — พื้นฐานแบบเร็ว ๆ |
| Null safety | sound null safety, operator ต่าง ๆ และ flow analysis |
| Classes & mixins | constructor (named/factory/const), mixin, extension, enum |
| Async in Dart | Future, async/await, Stream และ single-threaded event loop |
ทำไมต้องสี่หัวข้อนี้
หัวข้อที่มีชื่อว่า “ทำไมต้องสี่หัวข้อนี้”สี่หัวข้อนี้ไม่ใช่ language tour แบบสุ่ม ๆ — แต่ละอันโผล่มาตลอดใน code ของ Flutter:
flowchart LR ns["Null safety"] --> w["widget props ที่ปลอดภัย, optional params"] cc["const constructors"] --> perf["rebuild widget ราคาถูก"] mx["mixins"] --> st["State mixins (ticker, observer)"] as["async / Stream"] --> ui["FutureBuilder, StreamBuilder"]
- Null safety กำหนดว่าคุณ model widget property และข้อมูลที่เป็น optional อย่างไร
constconstructor คือ lever ที่ใหญ่ที่สุดของ performance ใน Flutter — widget ที่เป็นconstจะถูกข้ามตอน rebuild- Mixin คือวิธีที่ Flutter เพิ่มความสามารถให้
Stateclass ของคุณ - Async และ Stream คือวิธีที่ UI คุยกับ network, database และเวลา