หากใครเคยได้ยินเรื่องหลักการ Pair programming มากันบ้างแล้ว แนวคิดการเขียนโปรแกรมแบบ MVC ถึงไม่ใช่ก็ใกล้เคียงกัน เพราะทุกคนจำเป็นจะต้องรู้สิ่งที่อีกคนกำลังทำ หากซอร์สโค๊ดที่ Model ไม่สนับสนุนการทำงานในส่วนของ Controller นั่นก็อาจจะหมายถึงว่า กำลังเดินผิดทาง ซึ่งก็บอกไม่ได้ว่า M หรือ C ที่กำลังสับสน
ดังนั้น ไม่ว่าใครทำอะไรก็จะรู้และเข้าใจกันหมดรวมถึงคนที่รับผิดชอบในส่วนของ View ด้วย ว่ามีอะไรให้ดึงไปใช้ได้บ้าง
ปัญหาหนึ่งที่เคยเจอก็คือ ในบริษัทมีการพัฒนาโปรแกรมอยู่ 3 ระบบด้วยกัน 1) โปรแกรมขาย 2) โปรแกรมศูนย์บริการ 3) โปรแกรมสนับสนุนการทำงานภายในองค์กร(HR, Account รวมอยู่ในนี้ด้วย)
ทุกครั้งที่สรุปงาน ทีมผมจะพบว่าลกทีมทำงานช้า แต่ก็ไม่อาจจะหาสาเหตุได้ว่าช้าเพราะอะไร เพราะเขียนโค๊ดคนละส่วนกัน และเมื่อหัวหน้าถามผมเกี่ยวกับซอร์สโค๊ดที่ลูกทีมใช้ และวิธีเขียนก็พบว่าซอร์สโค๊ดสุดแสนจะวุ่นวาย ไล่โค๊ดกันจนลูกตาแทบถลนออกมา (เวอร์นิดๆ แต่ก็ใกล้เคียง)
จากนั้นก็เริ่มมองหาวิธีที่จะแก้ปัญหาในส่วนนี้ ก็ได้หลักการ MVC นี่แหละครับที่น่าสนใจที่สุด คือ ใครถนัดส่วนไหนก็จัดการส่วนนั้น โดยทำงานไปพร้อมๆ กัน
ต้องยอมรับเลยว่า น้องใหม่บางคนเก่งดีไซน์สุดๆ และคนอื่นๆบางคนก็ถนัดเรื่องของฐานข้อมูลแบบเทพๆ ส่วนตัวผมเองก็ได้อย่างละนิดอย่างละหน่อย ที่ถนัดสุดคงจะเป็นช่วยคิดลอจิก สำหรับงานใหม่ๆ ซึ่งน่าจะหมายถึงส่วนของ Controller นั่นเอง
และสุดท้ายก็ลงความเห็นว่า CodeIgniter เหมาะที่สุดที่จะใช้สำหรับการนี้ เพราะเรียนรู้เร็ว และตอบโจทย์ในสิ่งที่ต้องการ
http://ellislab.com/codeigniter
--------------------------------------------
ติดตามเรื่องราวการเขียนโปรแกรม PHP ได้ที่
https://www.youtube.com/user/PHPcodingAndDesign/channels
เตรียมตัวก่อนเขียน PHP 5.5
https://www.youtube.com/playlist?list=PLEFxdFJkMLu78rEFPPzkpeieOGEJp730g
ความคิดเห็น
แสดงความคิดเห็น