สวัสดีเพื่อนๆ และยินดีต้อนรับกลับมา
ในวิดีโอนี้เราจะทำการสรุปอย่างรวดเร็วเกี่ยวกับชั้นต่างๆ
และเราจะเห็นขั้นตอนที่เราจะปฏิบัติตามเพื่อสร้างแอปที่น่าทึ่งของเรา NVM
ซึ่งย่อมาจาก Model View
ViewModel เป็นรูปแบบการออกแบบสถาปัตยกรรมที่ใช้กันอย่างแพร่หลายในการพัฒนาแอปพลิเคชัน Android
มันถูกออกแบบมาเพื่อช่วยให้นักพัฒนาสามารถแยกแยะปัญหาและปรับปรุงความสามารถในการบำรุงรักษาและการทดสอบของโค้ดของพวกเขา
นี่คือคำอธิบายสั้น ๆ ของแต่ละองค์ประกอบในสถาปัตยกรรม mVVM
องค์ประกอบแรกและชั้นแรกคือโมดัล
โมเดลเป็นตัวแทนของข้อมูลและตรรกะทางธุรกิจของแอปพลิเคชัน
มันรวบรวมข้อมูลไว้และให้วิธีการในการโต้ตอบกับข้อมูล เช่น การดึงข้อมูล
การจัดเก็บ หรือการจัดการข้อมูล
ในแอนดรอยด์, นี้อาจรวมถึงแหล่งข้อมูลเช่นฐานข้อมูล, API, และบริการแบ็กเอนด์อื่น ๆ.
วิว
มุมมองรับผิดชอบต่อส่วนติดต่อผู้ใช้และการนำเสนอข้อมูล
ประกอบด้วยไฟล์เลย์เอาต์ XML, กิจกรรม, เฟรนจ์เมนต์, และองค์ประกอบ UI
เช่น ปุ่ม, ข้อความ, วิว และวิดเจ็ต
ใน mVVM มุมมองจะสังเกตการเปลี่ยนแปลงในโมเดลมุมมองและอัปเดต UI ตามความเหมาะสม
โมเดลมุมมอง
โมเดลมุมมองทำหน้าที่เป็นสะพานเชื่อมระหว่างโมเดลกับมุมมอง
มันเก็บข้อมูลที่เกี่ยวข้องกับ UI และตรรกะทางธุรกิจ แต่ไม่มีการอ้างอิงโดยตรงไปยังวิว
มันเปิดเผยข้อมูลและคำสั่งที่มุมมองสามารถผูกติดได้
และตอบสนองต่อการโต้ตอบของผู้ใช้โดยการอัปเดตโมเดลหรือให้ข้อมูลแก่มุมมอง
โมเดลมุมมองถูกออกแบบมาเพื่อให้สามารถทดสอบได้ง่าย และช่วยในการจัดการสถานะและตรรกะของ UI
มาเริ่มกันที่โมเดล
เราจะใช้แหล่งข้อมูลระยะไกลในแอปพลิเคชันของเรา
ดังนั้นเราจะสร้างฐานข้อมูล และสร้าง API ของเราเอง
และจาก API นี้เราจะดึงข้อมูลการตอบกลับในรูปแบบ Json
และใช้การอัปเดตแบบติดตั้งเพิ่มเติมเพื่อปรับปรุงส่วนติดต่อผู้ใช้ (UI) และออกแบบแอปพลิเคชันตามแนวทาง mVVM นี้
ดังนั้นขั้นตอนแรกที่เราจะทำคือสร้างฐานข้อมูลท้องถิ่นของเราโดยใช้ MySQL
จากนั้นเราจะสร้าง API ของเราเองโดยใช้ PHP ดึงข้อมูล Json จากฐานข้อมูลผ่าน API นี้
โดยใช้ Retrofit ในการสร้างอ็อบเจ็กต์ Java แสดงคำถามในแอป Android และปฏิบัติตามสถาปัตยกรรม mVVM
มาดูขั้นตอนในรายละเอียดเพิ่มเติมกัน
ก่อนอื่น เราจะสร้าง API ของเราเองที่ดึงข้อมูลจากฐานข้อมูลของเราเอง
และเราจะสร้างใน MySQL ด้วย
จากนั้นเราจะดึงข้อมูลและคำตอบในรูปแบบ Json
และโดยการใช้การปรับปรุงเพิ่มเติม เราจะเปลี่ยนการตอบสนอง Json นี้ให้เป็นวัตถุ Java แบบธรรมดา
และวัตถุเหล่านี้จะแสดงใน UI ของแอป
นี่คือภารกิจของเรา
ดังนั้นฉันต้องการให้คุณตั้งใจอยู่กับฉัน เพราะนี่เป็นแอปพลิเคชันที่สำคัญมากที่เราจะสร้างร่วมกัน