AJAX Techology ดีจริงหรือ??
เช่น บริษัทแห่งหนึ่งโพสในเว็บหางานว่า ต้องการ เว็บโปรแกรมเมอร์ คุณสมบัติดังนี้
โห !!! พ่อคุณ จะหาโปรแกรมเมอร์หรือยอดมนุษย์ครับท่าน
พออ่านลงมาด้านล่าง ช้ำใจหนักกว่าเก่าอีกตรง
เงินเดือนเริ่มต้นที่ 8,000 บาท
อ๊ากกกกกกกกกกกกก อยากกระโดดกัดคอคนเขียน Requirement เว้ยยยยย โปรแกรมเมอร์นะครับ ไม่ใช่คนขับรถตู้บริษัท T___T
นอกเรื่องพอแว้ว เข้าเรื่อง ๆๆๆ
ผมจะไม่เล่าประวัติหรือบอกความหมายเกี่ยวกับ AJAX นะครับ แต่จะเปรียบเทียบข้อดีข้อเสีย เท่าที่ผมค้นพบละกัน
ข้อดี
- การโหลดหน้าเว็บเร็วขึ้น เนื่องจากโหลดเฉพาะข้อมูลที่จำเป็นต้องแสดงขึ้นมาจริง ๆ
- ทำให้ User Interface ใช้งานได้ง่ายขึ้น รวดเร็ว
- ถ้าเขียนดี ๆ จะลดการทำงานของ Server ได้เยอะมาก ๆ
- ถ้าใช้ร่วมกับ java script ทั่วไป จะทำให้มี Feature เจ๋ง ๆ เกิดขึ้นมาบนโลก เช่น หากใช้ร่วมกับ onKeyPress คุณก็จะได้ Auto Complete หรือ Realtime Search ในหน้าเว็บของคุณ
- ใช้ได้ดีกับ รูปภาพ, ตัวเลข และ Short Description ภาษาอังกฤษ
- Auto sync กับ ฐานข้อมูลได้แบบ Real time (ใช้ความสามารถในการจับเวลาของ java เพื่อ sync ข้อมูลกับฐานข้อมูล)
ข้อเสีย
- บางครั้งการใช้โดยไม่ยั้งคิด อาจทำให้ Server ทำงานหนักขึ้นมากกว่าปกติ 4 เท่าตัว
- การใช้ ajax กับข้อมูลขนาดใหญ่ทำให้เกิดความน่ารำคาญ มากกว่าความสะดวกสบาย เช่นการใช้ Ajax โหลดคอนเท้นทั้งหน้า ที่มีรูปภาพจำนวนมาก
- ถ้าไม่สร้าง Framework ดี ๆ มันจะใช้ยากมาก ดูวุ่นวาย
- ข้อนี้สำคัญมาก ๆ Search Engine จะไม่เห็นข้อมูลที่ถูกโหลดขึ้นมาด้วย ajax เพราะข้อมูลที่ถูกโหลดมาตอนแรกไม่มีอยู่ในหน้าเว็บ การใช้ ajax เป็นการแทนที่ของ Object
- การทำงานของ AJAX ค่อนข้างไม่ Support กับภาษาไทย จำเป็นต้องใช้ Encode เป็น Utf-8 เท่านั้น และเจ้า Utf-8 มีปัญหากับภาษาไทยในบางตัวอักษร (ผมเคยเจอ Database ไม่สามารถบันทึก ภ ได้ ทำให้ต้องแปลงข้อมูลเป็น Html entities ก่อนเก็บลงฐานข้อมูล และ Decode กลับตอนดึงมาแสดงผล T__T)
- ค่อนข้างมีปัญหากับการ Upload File ต่าง ๆ ถ้าคนเขียนไม่เก่งพอ ได้มีมึนกันไปข้างนึง (เช่นผม-*-)
- Error และ Debug ยากนอกเสียจากคุณจะมีตัวช่วย อย่าง Firefox และ firebug(Firefox extension)
- เนื่องจากมันเปลี่ยนแปลงแค่ Object บางตัวโดยไม่ต้องโหลดหน้าเว็บ ทำให้ Page View คุณลดลงไปด้วย (มีผลสำหรับการตัดสินใจของ Sponsor และค่าโหลดของ Google adsense)
- หากการเขียนไม่รัดกุมเพียงพอ อาจเป็นช่องโหว่สำหรับ Hacker เข้ามาวุ่นวายในระบบของเราได้ เนื่องจากมันทำงานด้วย Query String
- เขียนยากขึ้นกว่าเดิม เพราะมันทำงานร่วมกับ Event script ทำให้คุณต้องใส่ใจกับรายละเอียดขั้นตอนเล็ก ๆ มากขึ้น
นึกไม่ออกแย้ว…. ถ้านึกออกจะมาเพิ่มให้ทีหลังนะครับ
สรุปได้ว่า มันเหมือนดาบสองคม.
ถ้าคุณกำลังจะทำ SEO มันแทบจะไม่มีประโยชน์อะไรสำหรับคุณเลย นอกจากใช้งานกับ Action เล็ก ๆ ที่ไม่เกี่ยวกับ Content ขนาดใหญ่
แต่มันมีผลมหาศาลทางด้านจิตใจของ User
และถ้าคุณไม่สนใจ SEO เลย เพราะงานของคุณเป็นงานที่สร้างขึ้นเพื่อให้ User ใช้อย่างเดียวและรายได้ของคุณไม่ได้มาจากการโฆษณา เว็บคุณไม่ต้องพึ่งการประชาสัมพันธ์ อาจเป็นเพราะว่ายังไงก็มีคนใช้อยู่แล้ว การทำงานของโปรแกรมมุ่งไปที่ User Interface เป็นหลักเท่านั้น AJAX นี่ล่ะครับ มันคือเทคโนโลยีชั้นยอดสำหรับคุณเลยล่ะครับ
ครับ AJAX ไม่จำเป็นเสมอไปที่ต้องใช้กับทุกอย่าง แรกๆ จะรู้โหเเท่ โหเทพ เข้าเว็บ AJAX บ่อยเข้าชักรำคาญแงะ มันจะหมุนๆ ไปหาอะไรนักหนา
เรื่องจำนวนหน้านี่แหละครับเรื่องใหญ่สำหรับคนทำเว็บ ส่วนการเอามาใช้ผมเห็น น่าจะตรงกับหลายๆ คนว่า เอาแค่พอเหมาะควร ผมไม่เป็นจาว่าเลยลาขาดเรื่อง ajax
//ฝากแก้นิดนึง ลัดกุม ==> รัดกุม
ผมเองยังไม่เป็นเลย ไอ้เจ้า AJAX เนี่ย แต่ก็เห็นด้วยนะ ว่าเลือกใช้แค่บางส่วนก็พอ
แง้ว ๆๆๆ แว้วหน้าแตก -*- รัดกุมหรอกหรือนี่ ขอบคุณคร้าบบบ เด๋ว edit ก่อง งิงิ
ผมใช้จริงมาแล้วครับ เคยลองทั้ง 2 แบบทั้งแบบไม่มี Framework และ มี Framework ทั้งใน php หรือ javascript เองผมว่าใน Javascript ถือว่าทำงานดีมาก แต่ถ้าใครใช้ PHP ทำโดยตรงผมแนะนำว่าอย่าเลยดีกว่าครับ ไม่ได้ช่วยให้ Server ทำงานเบาลงมากเท่าไรเลยเพราะมันก็โหลดจาก Server อยู่ดีไม่ได้โหลดข้อมูล ajax จากเครื่องเขาเอง
Ajax สมบูรณ์พอตัวนะครับ แต่เดียวนี้ถ้าจะให้เจ๋งเป็นระดับ RIA ได้นี้คือ Flex เลยครับไม่จำเป็นต้องเรียนรู้ Flash ผสม PHP ผสม AJAX เลยตัวเดียวเอาอยู่สุดยอด
Flex -> Next Generation Technology แน่ๆครับ
ใช้ Ajax อยู่ค่ะ แต่ไม่ได้เขียนเองหมด เอา Framework มาใช้ ส่วนตัวแล้วชอบเทคโนโลยีนี้ค่ะ รู้สึกว่ามันทำให้สะดวกกับผู้ใช้มากขึ้น แต่คนเขียนก็ต้องละเอียดมากขึ้นเหมือนกัน
มีโอกาสจะลองใช้ Flex ดูค่ะ
does any one tell me more about Amway ?