10 ข้อแนะนำเวลาใช้ PHP MVC Framework
ห่างหายไปนานพอตัวแถมยังติดค้าง Barcamp Bangkok วันที่ 2 อีกถ้าว่างแล้วเดียวผมจะรีบเขียนเลยครับผม
เอาละเข้าเรื่องกันเลยวันนี้ผมจะฝากข้อแนะนำง่ายๆไว้ละกันครับ 10 ข้อ
- แยก Business Logic ให้ออกจาก View อย่างชัดเจน เช่น ในโค้ดส่วนของ View ไม่ควรมีประมาณนี้ครับ
if(user_login() && not_admin()) ควรจะเปลี่ยนให้เป็นตัวแปรแค่นี้พอ if($logged_in_and) เพื่อความง่ายในการอ่านและแยกส่วน Business Logic - พยายามอย่าเขียนโค้ดซ้ำ ถ้ารู้ตัวว่ากำลังเขียนโค้ดซ้ำ ให้พยายามหาทางแก้ เช่น เขียน function is_login() ใน user class เพื่อถามว่า login รึยัง แต่ดันใช้ function นี้ในคลาสอื่นๆ ดังนั้นเราควรจะย้าย function is_login() ไปอยู่ภายใต้คลาสแม่ที่แต่ละ class อื่นๆของเราถูก implement ขึ้นมาเช่น Controller
- หลายๆ Framework จะไม่มีการกำหนดว่าเราต้องกำหนดชื่อในไฟล์และโฟลเดอร์ view อย่างไร และเวลาเรียกก็ต้องทำเอง ผมมีสิ่งที่ผมลองมาแล้ว รู้สึกว่าไม่ได้ผลคือการที่พยายามจะเรียก view ที่ประกอบกัน เช่นมี header footer จากภายใน Controller สรุปแล้วมันยุ่งเหยิงมาก ส่วนวิธีแก้ก็คือในไฟล์ view แต่ละหน้านั้นให้ include header footer ลงไปเลย แต่พยายามใช้เป็นแบบ function ทำเองจะได้ปรับแก้ไขสะดวกเพราะมันจะมีพวก parameter บางอย่างที่ต้องเปลี่ยนไปในแต่ละหน้าแต่ใช้ header ตัวเดียวกัน เช่น title
- เรื่องการ validation และเรื่องจัดการเวลาเกิด error เป็นสิ่งที่ไม่ควรละเลย เพราะเราต้องทำการ validation กันอยู่หลายๆหน้า ซึ่งมีลักษณะคล้ายกันดังนั้น ถ้าเขียนไม่ดีละก็เสียเวลาเขียนซ้ำบ่อยแน่
- ค่า Default เป็นเรื่องที่ไม่ควรละเลย เช่น ถ้าตัวแปรนี้ไม่ได้ถูก set มาควรมีค่าเป็นอะไรเพราะใช้บ่อยในพวก form
- ควรหา Editor ที่สามารถใช้กับ PHP Framework ของคุณได้ เพื่อประหยัดเวลาในการหา function ฯลฯ
- ก่อนลงมือเขียนจริง ควรสร้าง Class Diagram และ ER-Diagram ก่อน แต่ถ้าคุณไม่ถนัด เวลาทำงานเมื่อคุณสะกิดใจว่ามันผิดแปลก อย่าฝืนทำต่อแต่ต้องแก้ ให้เป็นไปอย่างที่มันควรจะเป็นซะ อย่าปล่อยปัญหาไว้
- ถ้า Framework ไม่มี Unit Test มาให้ควรใช้พวก Unit Test ของตัวอื่นมาใช้ซะ เพื่อระบบที่มีคุณภาพ เช่น Firephp เป็นตัวหนึ่งที่ใช้ได้
- หัดทำบ่อยๆจะได้ชิน และควรตั้งเป้าหมายให้มากขึ้น เช่น รองรับ i18n , การเปลี่ยน template ฯลฯ
- ค้นหา plugin ต่างๆก่อนที่คิดจะสร้างขึ้นมา ไม่แน่ว่าจะได้งานที่ดีกว่า และประหยัดเวลากว่า
วันนี้ก็ลากับ 10 ข้อง่ายๆสำหรับคนใช้ PHP MVC Framework นะครับ แต่ใช้ได้กับ Framework ตัวอื่นๆด้วยนะครับ โดยนี้คือความเห็นส่วนตัวของผมและงานที่ผมทำคือ Web Application ซึ่งมีอะไรมากมายจริงๆ
| Tweet |
เนื้อหาคล้ายกันที่น่าสนใจ

