MVC คืออะไร?
โมเดล วิว และคอนโทลเลอร์ เป็นการออกแบบสถาปัตยกรรมซอร์ฟแวร์อย่างหนึ่ง โดยการแบ่งออกเป็น 3 ส่วน คือ ส่วนของข้อมูล (Model) ส่วนของการประมวลผล (Controller) และส่วนการแสดงผล (View) ในมุมของ Web Application นั้นการออกแบบสถาปัตยกรรม MVC นั้นได้รับความนิยมมากเช่นกัน และใน Yii Framework 2 ก็ได้ใช้การออกแบบในรูปแบบนี้
Model - View - Controller
Model
โมเดล เปรียบเสมือนตัวแทนของข้อมูลที่เราทำงานด้วย เช่น ข้อมูล น้ำหนัก ส่วนสูง เพื่อนำไปคำนวณหาค่า BMI หรือ ข้อมูลของผู้ใช้งานที่ดึงมาจากฐานข้อมูลตอนเข้าสู่ระบบ เป็นต้น
โดยทั่วไปแล้วใน Model ของ PHP Framework จะประกอบไปได้วยส่วนที่เรียกว่า Object Relation Mapping หรือ ORM ซึ่งเป็นส่วนที่ใช้ในการ Map Property ของ Class เข้ากับ Attribute ของตาราง ดังนั้นเราจะเห็นว่า Yii จะใช้คำว่า Attribute แทน Property
Controller
Controller หรือตัวควบคุม (แปลตรงตัว) เป็นส่วนที่มีไว้สำหรับการเขียนโปรแกรมควบคุมข้อมูลหรือ Model เช่น ส่ง Model ไปสร้างฟอร์มใน View หรือ รับค่าจาก View มาประมวลผล แล้วส่งไปบันทึกใน Model เป็นต้น โดย Controller จะทำงานประสานกันระหว่าง Model และ View
View
View เป็นส่วนของการแสดงผลในรูปแบบต่างๆ เช่นนำข้อมูลที่ส่งมาจาก Controller มาแสดงผลในรูปแบบตาราง (Grid) ซึ่งใน Yii Framework 2 นั้นมีตัวช่วยในการแสดงผลได้หลายแบบ เช่น GridView แสดงแบบตาราง ListView แสดงแบบมี template ของ view DetailView แสดงแบบรายละเอียดของ Record เป็นต้น
References:
https://th.wikipedia.org/wiki/%E0%B9%82%E0%B8%A1%E0%B9%80%E0%B8%94%E0%B8%A5-%E0%B8%A7%E0%B8%B4%E0%B8%A7-%E0%B8%84%E0%B8%AD%E0%B8%99%E0%B9%82%E0%B8%97%E0%B8%A3%E0%B8%A5%E0%B9%80%E0%B8%A5%E0%B8%AD%E0%B8%A3%E0%B9%8C
http://www.tutorialspoint.com/struts_2/basic_mvc_architecture.htm
ความคิดเห็น