MVC คืออะไร

PHP Knowledge เป็น บอร์ดรวามความรู้ php เน้นบทความ แนวทางการเขียนโปรแกรม บันทึกกันลืม เพื่อให้สมาชิกได้เขียนความรู้ที่ตัวเองมีให้สมาชิกท่านอื่นๆ ได้ เข้ามาอ่าน และ ไว้อ่านเองกันลืมด้วย

Moderator: mindphp, ผู้ดูแลกระดาน

M034
PHP Super Member
PHP Super Member
โพสต์: 258
ลงทะเบียนเมื่อ: 28/03/2016 10:21 am
ติดต่อ:

MVC คืออะไร

โพสต์ที่ยังไม่ได้อ่าน โดย M034 »

MVC เป็นหนึ่งในหลายๆ pattern ของ Design pattern ซึ่งเป็น Model
หรือรูปแบบในการวางโครงสร้างโปรแกรมทำให้แยกกันระหว่าง M=Model V=View C=Coltroller

1.Model เป็นการตัดสินใจในนการเข้าถึงและใช้งานข้อมูล(Data)
2.View เป็นส่วนของการนำข้อมูลที่ได้จาก Model มาแสดงผลให้ผู้ใช้ได้ทราบข้อมูลผ่านทางส่วนติดต่อกับผู้ใช้งาน (User Interface)
3.Controller เป็นส่วนที่ตอบรับและโต้ตอบการทำงานของผู้ใช้(Client) โดยจะเป็นตัวกระตุ้นให้ Model และ View ทำงานไปในทิศทางเดียวกัน
MVC เราจะแปลกันว่า รูปแบบการเขียนโปรแกรมแบบหนึ่งที่แยกการทำงานของ Model, View, Controller ออกจากกัน เพื่อให้แต่ละส่วนทำหน้าที่แตกต่างกันและทำงานสอดคล้อง ประสานกัน

การทำงานร่วมกัน MVC
Controller
•เป็นส่วนที่ทำงานเป็นอันดับแรกเมื่อมีโปรแกรมถูกเรียก จาก Web browser
•เป็นส่วนที่ติดต่อการทำงานระหว่างผู้ใช้และโปรแกรม
•มีการติดต่อกับ Database(ฐานข้อมูล) ด้วย Model และแสดงผลข้อมูลผ่านทาง View
•เป็นส่วนที่มีการประมวลผลหลัก ของโปรแกรม

Model
•ดูแลในเรื่องของการติดต่อสื่อสารระหว่าง Object และ Database โดยที่ผู้พัฒนาไม่ต้องยุ่งยากกับการใช้ SQL command
•เป็นงานด้านการตรวจสอบความสัมพันธ์ของข้อมูล มีผลกับฐานข้อมูล

View
•เป็นส่วนที่ต้องแสดงผลผ่าน web browser
•เขียนด้วยพื้นฐานของ HTM, แทรกด้วย script ของ ruby คล้าย PHP,JSP,ASP
•การทำงานสัมพันธ์อยู่กับ controller

MVC เป็นรูปแบบการเขียนโปรแกรมแบบหนึ่งที่แยกการทำงานของ Model, View, Controller ออกจากกัน เพื่อให้แต่ละส่วนทำหน้าที่แตกต่างกันและทำงานสอดคล้องกัน แต่ถ้าไม่แยกออกเป็นส่วนๆ จะทำให้ผลที่ตามมาจากการเขียนโปรแกรมในภายหลังคือ ยิ่งเขียนยิ่งยาว ยิ่งอ่านยาก ถ้าทำงานกันเป็นทีมหลายคน จะทำให้ลำบากในการหาจุดที่ต้องแก้ไขโปรแกรมเพราะเขียนอะไรไว้ก็ไม่รู้เยอะแยะไปหมด ส่งผลให้การทำงานล่าช้า แต่ถ้าแยกเป็นส่วนๆ การแก้ไขข้อมูลก็จะทำได้ง่ายขึ้น ไม่ต้องรอให้คนใดคนหนึ่งทำเสร็จก่อน แต่สามารถเขียนไปพร้อมๆกัน แต่จำเป็นต้องสอดคล้องกัน

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: Google Adsense [Bot] และบุคลทั่วไป 49