บทเรียน 7 กลาง

Task / Subroutine / Struct / Topic

หัวใจของ Mapo: แยกงานเป็นชิ้น ๆ ให้ทำงานคู่ขนาน แล้วคุยกันผ่าน topic

6.1 task (งาน) — thread แบบขนาน

.mapo
english

ทุก task คอมไพล์เป็น state machine แล้วถูกเรียกวนแบบ non-blocking — ตัวแปรที่ประกาศนอกงานใช้ร่วมกันได้ (global) และตัวแปรที่สร้างในลูปจะเป็น static ต่อ task

6.2 sub (ส่วน) — subroutine / function

.mapo
english

6.3 struct (โครงสร้าง) — auto type inference

.mapo
english

6.4 topic / pub / recv / bridge / await

.mapo
english

6.5 organ (อวัยวะ) / brain (สมอง)

.mapo
english

อวัยวะ = โมดูลอ่านฮาร์ดแวร์ · สมอง = ตัวตัดสินใจ — เหมือน งาน แต่จัดกลุ่มให้อ่านง่าย (คอมไพล์เป็น state machine เหมือนกัน)

6.6 save / load — หน่วยความจำถาวร

.mapo
english

ESP32 ใช้ Preferences (namespace mapo_cfg) · ESP8266/UNO ใช้ EEPROM