ผมกำลังวางแผนที่จะเขียน Webapp ขึ้นมาสักตัวเพื่อหาประสบการณ์ ประมาณว่า ajax online musicstation ครับ หลังจากหาข้อมูลและทดลองใช้อยู่พักใหญ่ๆ ก็ยังตัดสินใจไม่ได้เสียทีว่าจะปักหลักกับ Framework ตัวไหนดี (ผมมีพื้น Python อยู่บ้าง แต่จะให้ศึกษา Ruby เพิ่มเติมก็ไม่ใช่เรื่องใหญ่)
สรุปจากที่ผมรวบรวมข้อมูลมาได้คร่าวๆ
- Rails
- Concise (กระชับ)
- Built-in AJAX Support
- Bigger community
- Database migration
- Django
- Explicit (ชัดเจน - ตรงนี้ถูกใจผมมาก)
- Admin page
จึงอยากจะขอสอบถามความเห็นจากสมาชิก Blognone ทุกท่านถึงประสบการณ์ในการพัฒนา Webapp บน Rails และ Django ว่ามีข้อดี ข้อด้อย ข้อสังเกต ตรงไหน อย่างไรบ้าง?
ป.ล. ผมควรจะเอาไปโพสที่ Codenone แทนรึเปล่าครับ?
กำลังมีคำ
audy Tue, 05/02/2008 - 22:59
กำลังมีคำถามเหมือนกันเลย
แต่ผมมีเวลา เลยจะลองทำทั้งสองอย่างดู แล้วค่อยดูเหตผลประกอบอีกทีครับ
ผมเชียร์
pittaya Wed, 06/02/2008 - 01:53
ผมเชียร์ django เพราะชอบ python เขียน ruby ไม่เป็น
.
Rails
sirn Wed, 06/02/2008 - 04:16
Rails ใช้ได้ดีสำหรับตอนเริ่มต้น แต่ถ้าหากตัวเว็บใหญ่ขึ้นแล้วควรจะไปหาทางเลือกอื่น (ถ้าทางฝั่ง Ruby ก็อย่าง Merb) เพราะ Rails มันช้า และใช้แรมมหาศาลมากเวลารัน ถ้าหากใช้ Mongrel ต้องรันอย่างต่ำ 2-3 ตัวถึงจะได้ performance ที่อยู่ในระดับที่รับได้ ข้อเสียที่สุดคือเรื่อง deploy ที่ถึงแม้จะมี Capistrano หรือ Vlad มาช่วยแล้ว ก็ยังทำให้การ deploy PHP app บางตัวที่ว่ายากๆ กลายเป็นสวรรค์
Django ใช้แล้วชอบใจตรงที่มันสร้าง query ออกมาได้สะอาดมาก ถ้าหากเป็น app เขียนให้เสร็จไวๆ น่าจะทำได้เร็วกว่า Rails อยู่พอสมควร (ส่วนหนึ่งขอบคุณหน้า Admin ของมัน แล้วก็พวก generic view) แต่ยังไม่เคยได้ใช้จริงๆ จังๆ เพราะส่วนตัวรู้สึกถูกใจ Pylons มากกว่า
แต่ถ้าให้แนะนำ ผมแนะนำให้ใช้ Rails สำหรับช่วงแรกๆ แล้วแปลงไปเป็น Merb ตอนหลังเมื่อตัว app โตขึ้น จะเป็นทางเลือกที่น่าจะสะดวกที่สุด เพราะ Rails->Merb มันแปลงค่อนข้างง่าย, ได้ performance ที่ใช้ได้, ได้อะไรอย่าง Migration ของ AR มาด้วยเป็นของแถม, etc.
T_T
taiko_gogo Wed, 06/02/2008 - 08:53
T_T อยากลองทั้ง merb ทั้ง django เลย แต่ไม่รู้จะแบ่งภาคยังไง
เริ่มจาก merb น่าจะสบาย
มาช่วยยืนยันอีกคนว่า RoR กินแรมอยู่มากโข
Merb
sirn Wed, 06/02/2008 - 15:40
In reply to T_T by taiko_gogo
Merb ผมว่ารอให้มันโตกว่านี้หน่อยน่าจะปลอดภัยกว่า เพราะ document จากตอนล่าสุดที่เช็คอยู่ในระดับที่ค่อนข้างแย่เลย (เวอร์ชั่นที่ผ่านมาก็โดน deprecate แบบมึนๆ ไปทีนึง ไม่ยอมอัพเดท changelog ด้วย) แนะนำว่าตอนนี้ไปนั่งเล่น Django ก็เป็นตัวเลือกที่ดีครับ
Bigger community
cwt Wed, 06/02/2008 - 12:11
Bigger community จริงเหรอ? ส่วนตัวผมว่ามันก็พอๆ กันนะ ผมว่า rails น่าจะดังในโซนเอเชียมากกว่า(ความเห็นส่วนตัว) django ที่ usa + ยุโรปใช้กันเยอะนะครับ
ง่ายๆ ก็ถ้านักพัฒนา รวมถึงคนที่จะพัฒนาต่อจากเราชอย ruby ก็ใช้ rails, ถ้าชอบ python ก็ django ในการใช้งาน เชิง business จริงๆ แล้วต้องใช้คัวทีี่จะแก้ปัญหาได้เร็วที่สุด performance ยังแก้ด้วยการซื้อ hardware ใหม่ๆ แรงๆ ได้ แต่ software ถ้ามีปัญหา นี่เรื่องใหญ่กว่าเยอะ
แก้ปัญหาด
Ford AntiTrust Wed, 06/02/2008 - 14:33
In reply to Bigger community by cwt
แก้ปัญหาด้วย h/w ก่อนการ optimize ตัว software เป็นความคิดที่ผิด และมักออกมาจาก it manager ที่ไม่รู้เรื่อง it ครับ ซึ่งตอนนี้ผมก็เจอคนคิดแบบนี้อยู่หลายคนเหมือนกัน
Ford AntiTrust’s Blog | PHP Hoffman Framework
ผมมองว่าม
lew Wed, 06/02/2008 - 14:46
In reply to แก้ปัญหาด by Ford AntiTrust
ผมมองว่ามันไม่ผิดซะทีเดียวนะ
แต่ที่น่าสนใจคือโลกตอนนี้กำลังหันไปทาง Scale-Out แทน Scale-Up เมื่อนั้นแล้วซอฟต์แวร์ที่ไม่รองรับ ไม่ว่าจะซื้อเครื่องแพงบรรลัยแค่ไหนมันก็เร็วเท่าเดิม
ถึงตอนนั้นคงคิดใหม่กันได้
LewCPE