แนวคิดของ MVC Design Pattern

MVC เป็นอีกคำที่เชื่อว่าหลายคนที่สนใจด้าน Software Development คงเคยได้ยิน แต่แนวคิดของ Design Pattern ตัวนี้เป็นยังไง ไปดูกันครับ

2023-11-30 11:58:42 - @ratanon

MVC คืออะไร?

MVC (Model, View, Controller) คือ Software Design Pattern อีกรูปแบบหนึ่งที่ได้รับความยอดนิยมในโลกของการพัฒนาซอฟต์แวร์ ยึดหลักของการทำงานที่แยกส่วนหน้าที่ต่อกันชัดเจน ทำให้มีความสามารถในการจัดการและบำรุงรักษาแอปพลิเคชันได้อย่างดีเยี่ยม

เดี๋ยวเราจะขออธิบายแต่ละส่วนแบบชัด ๆ ครับ

Model (M)

Model นั้นคือส่วนที่จัดการกับ Business Logic และ Data เช่น การเขียนลอจิค การจัดการกับข้อมูลและฐานข้อมูล โดยโมเดลนั้นจะแยกออกจากกันกับ Interface ชัดเจน (แต่มี C: Controller คั่นกลาง)


View (V)

ส่วนของ Interface ที่เป็นส่วนที่จะรับข้อมูลหรือแสดงผลข้อมูลจากผู้ใช้ หรือเป็นส่วนของผู้ใช้โดยตรงเลยก็ว่าได้ พูดง่าย ๆ เป็นส่วนหน้าเว็บ UIs ก็ว่าได้


Controller (C)

Controller ทำหน้าที่เป็นตัวกลางระหว่าง Model และ View โดยจะรับ request จากผู้ใช้เข้ามาแล้วนำมาประมวลผลหรือตีความว่า request นั้นคืออะไร แล้วส่งต่อไปที่ Model ให้จัดการกับข้อมูลต่อไป จากนั้น Controller ก็จะทำหน้าที่ response (ตอบกลับ) เช่น status 200 ถ้าสำเร็จ รวมไปถึงข้อมูลที่ผู้ใช้ได้ร้องขอมาต่อไป คือพูดง่าย ๆ ส่วนนี้เอาไว้ใช้จัดการ request & response นั่นเองครับ


MVC Flow (Example)


ตัวอย่าง MVC Frameworks ยอดนิยม

Note: Django เป็นเฟรมเวิร์คในรูปแบบ MVT แต่คอนเซ็ปต์ต่าง ๆ ก็แบบเดียวกันกับ MVC แตกต่างแค่การเรียก


สรุป

MVC คือ Software Design Pattern ยอดนิยมรูปแบบหนึ่งของงานด้าน Software Development แบ่งออกเป็น 3 ส่วน คือ M (Model) เป็นส่วนที่เกี่ยวข้องกับการจัดการข้อมูลหรือ business logic ในส่วนของ V (View) คือ ส่วนที่เกี่ยวข้องกับ User Interface และ C (Controller) คือ ส่วนที่เป็นส่วนการจัดการ request & response ของระบบ หรือเป็นตัวที่เชื่อมโยงระหว่าง Model และ View


ก็จบลงไปแล้วครับสำหรับบทความ MVC Design Pattern ซึ่งเราก็หวังว่าจะทำให้ผู้อ่านได้เข้าใจภาพรวมมากยิ่งขึ้นนะครับ

More Posts