MVC คืออะไร?
ความหมายของ MVC ก่อนอื่นผมขอเริ่มต้นที่ความหมายของ OOP ก่อน การเขียนโปรแกรมแบบ OOP คือ การแบ่งโปรแกรมหรือแอพพลิเคชันออกเป็นออบเจกต์ย่อยๆ แต่ละออบเจกต์ทำหน้าที่หลักเพียงอย่างเดียว สุดท้ายทุกๆออบเจกต์ทำงานร่วมกันออกมาเป็นแอพพลิเคชันที่สมบูรณ์ แล้วในความเป็นจริงเราจะแบ่งออบเจกต์ด้วยหลักการใด? อันนี้ก็ขึ้นอยู่กับปัจจัยต่างๆและการออกแบบ แต่แล้วมันเกี่ยวอะไรกับ MVC หล่ะ เกี่ยวแน่นอนครับ เพราะ MVC คือหลักการออกแบบ (Design Pattern) รูปแบบหนึ่งนั่นเอง ซึ่งเป็นที่นิยมมากในการออกแบบและประยุกต์ใช้กับเว็บแอพพลิเคชัน ชื่อเต็มๆของมันคือ Model-View-Controller ซึ่งเจ้า MVC นี้จะแบ่งแอพพลิเคชันตามบทบาทหน้าที่ (Roles of Objects) โดยแบ่งออกเป็น 3 บทบาทด้วยกันคือ Model (M) View (V) Controller (C) Model คือออบเจกต์ที่ทำหน้าเป็นตัวแทนของข้อมูล ไม่ว่าข้อมูลจะถูกจัดเก็บในรูปแบบใดในระบบฐานข้อมูลหรือในไฟล์ เมื่อข้อมูลนั้นถูกโหลดเข้ามาในแอพพลิเคชัน เราจะเปลี่ยนมันให้อยู่ในรูปของออบเจกต์ และเราเรียกบทบาทของออบเจกต์นี้ว่า " Model " ยกตัวอย่างเช่นออบเจกต์ Customer, Employee, Product เป็นต้น ฟัง...