วันก่อนเห็นบลอคของอาทเขียนเรื่องเกี่ยวกับ Netbeans 6.0 กับ Grails เลยลองไปนั่งอ่านดู Grails ก็เป็นกรอบสำหรับพัฒนาเว็บแอพพลิเคชันที่อิงมาจาก Ruby on Rails แต่ใช้ภาษา Groovy เป็นหลัก และทำงานบน Java Virtual Machine ลองอ่านหนังสือแนะนำการพัฒนาเว็บโดยใช้ Grails ดูแล้ว ก็ไม่ต่างจาก RoR หรือกรอบงานแบบเดียวกัน เช่น CakePHP แต่จุดเด่นของ Grails น่าจะอยู่ที่การใช้ JVM ให้สามารถใช้เครื่องมือ รวมทั้งไลบรารีต่างๆ ที่สร้างสำหรับ Java EE ได้เลย มีเครื่องมือให้ใช้เยอะพอดู น่าลองใช้ ที่ดูๆ อยู่เนื่องจากปี (การศึกษา) ที่แล้วพัฒนาระบบเก็บข้อมูลภายในสำหรับสถาบันฯ ด้วย CakePHP เว็บที่ทำขึ้นยังค่อนข้างสกปรกอยู่ ปีนี้อาจจะต้องปรับปรุงหรือพัฒนาเพิ่มเติม
ถ้าเปลี่ยนมาใช้ Grails แล้วสะดวกขึ้น หรือสามารถหาคนมาช่วยพัฒนาแทนได้ ไม่จำเป็นต้องทำเองทั้งหมด ก็น่าสนใจ ดูคร่าวๆ แล้ว เห็นว่า Grails มีโครงสร้างต่างๆ ที่ดีกว่า CakePHP เยอะ เพราะจุดขายของกรอบงานแบบนี้ คือ วิธีการที่เรียกว่า scaffolding ซึ่งทำให้สามารถสร้างเว็บเพื่อทำ CRUD (Create-Retrieve-Update-Delete) ได้ง่ายๆ แต่ก็เป็นปัญหาด้วยส่วนหนึ่ง เนื่องจากอาจจะไม่ได้ออกแบบมาให้ปรับแต่งได้ตามความต้องการของระบบ สุดท้ายเวลาต้องการอะไรเพิ่มเติมก็ต้องมาหาวิธีปรับแต่งเอง หรือเขียนเองทั้งหมด อย่าง RoR ก็ต้องมี StreamLine หรือ ActiveScaffold ออกมาเพื่อช่วยให้ทำงานได้ง่ายขึ้น ซึ่งส่วนนี้ดูเหมือนจะเป็นจุดเด่นของ Grails
อย่างไรก็ดี ปัญหาที่สำคัญของการใช้กรอบงานแบบนี้ คือ แนวความคิดในการพัฒนาโปรแกรมของนักพัฒนา ที่จะต้องก้าวข้ามเข้ามาอยู่ในกรอบ Object Oriented และ Model-View-Controller ผมรู้สึกว่านักศึกษาที่สอนอยู่ส่วนใหญ่ยังไม่สามารถข้ามมาได้ ส่วนใหญ่ยังติดอยู่กับ structured programming หวังว่าปีหน้าถ้าเปลี่ยนแนวคิดการพัฒนาโปรแกรมใหม่ ตั้งแต่วิชาแรกที่เริ่มเรียน เขาน่าจะเข้าใจได้ง่ายขึ้น
สุดท้ายจดลิงก์ไว้กันลืม