MVC

[Script จากรายการ Class A โดยอาจารย์ชยพล]

การเขียนโปรแกรมสำหรับงานใหญ่ๆ โดยเฉพาะที่ต้องทำงานกับฐานข้อมูล แนวทางหนึ่งที่เป็นที่นิยมมากคือ MVC = Model View Control โดยเป็นการแยกส่วนของโปรแกรม เพื่อไม่ให้โค้ดพันกันยุ่งเหยิง

เช่นถ้าเราจะทำ website สำหรับขายของ online ก็ต้องมีฐานข้อมูล และส่วนการแสดงข้อมูล ถ้าเราให้ทุกหน้า web ดึงข้อมูลจากฐานโดยตรงก็ทำได้ แต่หากฐานข้อมูลมีการปรับเปลี่ยน อาจทำให้ทุกหน้าที่ดึงข้อมูลโดยตรงนั้นกระทบ แล้วเราต้องตามไปแก้ทั้งหมด แก้ได้หมดก็ดี ถ้าแก้ไม่หมด ก็เกิด Bug แน่ๆ

MVC บอกว่า ส่วนที่เป็นตัวแทนจากฐานข้อมูล เราจะเรียกว่า Model โดยทั่วไปคือ เราจะเขียน Class ในโปรแกรมเพื่อเป็นตัวกลางระหว่างฐานข้อมูลกับโปรแกรมส่วนอื่นๆ หา่กมีการแก้ไข แก้ที่ Model ก็พอ และเครื่องมือสำหรับเขียนโปรแกรมยุคนี้ฉลาดสามารถช่วยเราแก้โค้ดลักษณะนี้ได้รวดเร็ว ด้วยการทำ Refactor

เมื่อเรามีข้อมูลแล้ว เราจะนำเสนอทางหน้า web โดยส่วน View ซึ่งก็คือหน้า web นั่นเอง การเขียนส่วนนี้ เราจะได้สนใจเพียงหน้าตาที่น่าใช้งาน ไม่ต้องห่วงเรื่องการดึงข้อมูลในหน้า web อีก

และเมื่อมีการเพิ่มเติม แก้ไข ลบ ข้อมูลหล่ะ จำเป็นต้องผ่านการควบคุม ส่วนนี้คือ Control ซึ่งเราจะเขียนโปรแกรมเพื่อควบคุมวิธีการคิดของระบบ และส่วนนี้จะไม่มี Graphics User Interface ใดๆ สนใจแต่หลักการทำงานเท่านั้น

หลักการ MVC เป็นที่นิยมกันนะครับ ถ้าจะเริ่มทำงานใหญ่ๆ ขอแนะนำให้วางแผนให้ดีก่อน อย่าเพิ่งลุยโค้ดทันที รื้อโค้ดไม่สนุกเลยครับ

Comments