มาหาวิธีเขียนโค้ดให้เสร็จอย่าวรวดเร็วกัน
เป็นเหมือนกันไหม "เขียนไปด้วย เทสไปด้วย"
เนื่องจากการเขียนยาวๆ แล้วมักจะทำให้เกิด BUG จำนวนมาก ต้องคอยตามเก็บตามแก้จนตาลายกันเลยทีเดียว ก็เลยติดนิสัยเขียนไปด้วย รันทดสอบไปด้วย และอย่างที่รู้ๆกัน การทดสอบโค้ดมักจะเป็นอะไรที่ซ้ำซากและจำเจจนน่าเบื่อ คลิกแล้วคลิกอีก ป้อนแล้วป้อนอีก
หรือถ้าไม่อยากป้อนเองก็อาจจะปลั๊กอินของเว็บบราวเซอร์อย่างของ Firefox เข้ามาช่วยลดเวลาก็ได้เช่น Selenium IDE ซึ่งหากท่านใดสนใจก็ลองค้นหาใน Google ด้วยคำว่า
"ทดสอบเว็บอัตโนมัติด้วย Selenium IDE"
แต่ถึงอย่างนั้น หากจะทดสอบทุกครั้งที่เขียนโค้ดส่วนใดส่วนหนึ่งเสร็จ ก็ยังคงเป็นการเสียเวลาสลับหน้าจอไปมาอยู่ดี จากอารมณ์ Coding มันส์ๆ ต้องสลับโหมดไป Design และยังต้องมานั่ง Test โปรแกรมอีก
งั้นลองแบบนี้ไหม ลองนึกถึงหลักการ MVC ที่แยกส่วนต่างๆออกจากกัน เรามาแบ่งตัวเองออกเป็น 3 ภาคจิตกันดีไหม?
ภาคจิตที่ 1 - Front-END
ภาคจิตที่ 2 - Back-END
ภาคจิตที่ 3 - Tester
แล้วก็วนลูปแบบนี้ไปเรื่อยๆ จนกว่าจะครบทุกส่วน ↺
เริ่มจาก Front-END ในมุมของ CodeIgniter ก็คือการสร้างไฟล์ View ให้ครบถ้วน หากต้องการทดสอบไฟล์ View ที่สร้างขึ้นมาเรียบร้อยแล้วนั้น อาจจะต้องเขียนส่วนของ Controller เอาไว้โหลดข้อมูลเพื่อแสดงผลลัพธ์บนหน้าเว็บบราวเซอร์ออกมาด้วย ซึ่งก็จะเป็นโครงสร้าง Controller เปล่าๆ ที่ยังไม่มีข้อมูลใดๆส่งไปใน View นั่นเอง
Back-END - ก็จะเริ่มต่อจากโครงสร้าง Controller เปล่าๆที่เราได้สร้างรอเอาไว้ โดยเขียนส่วนของของการเรียกข้อมูลจาก Database มาส่งต่อไปยัง View เพื่อแสดงข้อมูลต่างๆให้ครบถ้วน ก็จะมีส่วนที่ต้องทำคือการสร้าง Model การเรียกใช้ Libraries ต่างๆที่เกี่ยวข้องกับหน้าเว็บนั้นๆ
ส่วนสุดท้าย Tester จะเป็นขั้นตอนสุดท้ายเมื่อเราเขียนโค้ดจนครบทุกกระบวนการที่ได้วางเอาไว้แล้ว ก็ดำเนินการคลิกลิงค์ทีละหน้า และตรวจสอบข้อมูลว่าถูกต้องหรือไม่ ในส่วนนี้จะเป็นส่วนที่ใช้เวลาค่อนข้างมาก และมักจะดึงสมาธิหลุดจากการเขียนโปรแกรมทุกครั้ง ถ้าเราเขียนไป Test ไปพร้อมๆกัน
และท้ายที่สุดนี้หวังว่าแนวคิดนี้จะใช้ได้ผลบ้าง ไม่มากก็น้อยตามแต่ความสามารถปรับตัวกับสถานการณ์เฉพาะหน้า เพราะผู้เขียนเองก็ยังไม่ได้ลงมือปฏิบัติจริง แต่สุดท้ายแล้วจะใช้วิธีไหนก็คงอยู่ที่ความถนัด และความชอบส่วนบุคคล ต้องลองกันเองว่าแต่ละวิธีจะช่วยให้เร็ว หรือรวนไปมากกว่าเดิม
ความคิดเห็น
แสดงความคิดเห็น