Tuesday, September 3, 2013

MVC คืออะไร มันต่างกับแบบเดิมยังไง

MVC คืออะไร มันต่างกับแบบเดิมยังไง

ขอเรียกแบบเดิมว่าการเขียนแบบ structure นะครับ โดยการเขียนแบบเดิมเนี่ยยกตัวอย่างง่ายๆ เช่นระบบซื้อขายสินค้า จะประกอบด้วยไฟล์ดังต่อไปนี้ (ยกตัวอย่างเบื้องต้น)



จะเห็นได้ว่าถ้าเขียนด้วยไฟล์ .php จำนวน หลายร้อยไฟล์ขึ้นไป จะทำให้ยากต่อการค้นหาหรือว่าแก้ไข
ยิ่งถ้าเขียน function .php ด้วย ก็ยากต่อการแก้ไข แน่นอน เพราะไม่รุ้ว่า ไฟล์.php ใน folder นอกสุด จะไปลิ้งกับ file function php ใน folder ไหน คงหากันไม่ถูกแน่นอน


ก็ทำให้หันมาเขียนเป็น Framework ด้วย Yii แทนดีกว่า เพราะโครงสร้างแบ่งออกเป็น MVC วางไฟล์ไว้เป็นสัดส่วนสุดๆ

Model = นึกง่ายว่า 1 table คือ 1 ไฟล์ (ชื่อไฟล์เหมือนชื่อ table) ทำหน้าที่ติดต่อกับ table ในฐานข้อมูล

Controller = ถ้างงก็ให้มองเป็น OOP ก่อน 1 controller = 1 class และ 1 action = 1 method หรือ function ของ php ที่เราเคยเขียนกันนั้นเอง...พยายามจับกลุ่มขึ้นมาให้ได้ก่อนว่า จะให้ controller ชื่อ นี้ มี action อะไรบ้าง เพื่อง่ายต่อการแก้ไขในภายหลัง

View = หน้าแสดงผล แสดง css แสดงตำแหน่งโชว์ผลลัพธ์ที่เราต้องการ

ถ้าถามว่าเกี่ยวกันยังไง ก็เอาแบบง่ายๆ เลย ยกตัวอย่างเช่น การ save ลงฐานข้อมูล

View = protected/view/member/add.php
model = protected/model/member.php
controller = protected/controller/memberController.php

ภายใน memberController ให้สร้าง action ที่ชื่อว่า actionadd(){ ..}

- ข้อสังเกต สร้าง controller ชื่ออะไร ใน view ควรสร้าง folder ชื่อนั้นก่อน แล้วค่อยสร้างไฟล์ ที่เป็นชื่อ action สังเกตได้จากคำว่า member

 จบแบบฮ้วนๆ 555555555555555

No comments:

Post a Comment

Blog Archive

http://cksc.co.th/site/

Total Pageviews

Popular Posts