ไลบรารี JavaScript, ICEfaces, Flash ของ Adobe, Microsoft Silverlight และตอนนี้ HTML5 การแข่งขันระดับโลกสำหรับการครอบงำเครือข่ายได้เข้าสู่ยุคใหม่ - แอปพลิเคชันอินเทอร์เน็ตที่หลากหลาย (เรียกสั้น ๆ ว่า RIA หรือที่เรียกว่าแอปพลิเคชันอินเทอร์เน็ตที่หลากหลายในภาษาจีน)
วัตถุประสงค์ของบทความนี้คือเพื่อกำหนดว่า RIA คืออะไร อธิบายว่าทำไมเว็บจึงเริ่มเข้าใกล้ RIA มากขึ้น สำรวจกรอบงาน RIA ต่างๆ ที่มีอยู่ในปัจจุบัน ให้ภาพรวมของข้อดีและข้อเสียบางประการของแต่ละกรอบงาน และหารือเกี่ยวกับอะไร เทคโนโลยีใหม่เหล่านี้จะมีลักษณะเช่นนี้ในอนาคต
RIA คืออะไร?
สิ่งที่เรียกว่า RIA หรือแอปพลิเคชันเครือข่ายที่หลากหลาย หมายถึงแอปพลิเคชันเครือข่ายที่สามารถทำงานเหมือนกับโปรแกรมเดสก์ท็อป ก่อนที่ RIA จะถือกำเนิดขึ้น เว็บแอปพลิเคชันส่วนใหญ่ถูกสร้างขึ้นด้วยเพจแบบคงที่
Sumo Paint เป็น RIA ที่ใช้ Flash พร้อมความสามารถในการแก้ไขกราฟิก เช่น Photoshop
ต่างจากแอปพลิเคชันบนเดสก์ท็อป การโต้ตอบกับหน้าเว็บมักจะต้องโหลดหน้าใหม่ทั้งหมด ในทางกลับกัน แอปพลิเคชันบนเดสก์ท็อปมีการโต้ตอบกับผู้ใช้ที่ดีกว่ามาก เนื่องจากการประมวลผลทั้งหมดเกิดขึ้นบนเครื่องของผู้ใช้เอง ทำให้ผู้ใช้ได้รับประสบการณ์ที่ราบรื่นยิ่งขึ้น
เป็นผลให้นักพัฒนาซอฟต์แวร์เริ่มถามตัวเองว่า "ผลิตภัณฑ์ของเราควรเป็นแอปพลิเคชันเดสก์ท็อปหรือเว็บแอปพลิเคชันหรือไม่"
นี่เป็นคำถามที่ยุติธรรมเสมอ เนื่องจากแอปทั้งสองประเภทมีข้อดีและข้อเสียของตัวเอง
แอปพลิเคชันเดสก์ท็อปมีการโต้ตอบกับผู้ใช้ได้อย่างราบรื่น แต่มีการขายซอฟต์แวร์และประสบปัญหาการเผยแพร่และอัปเดต
ในทางกลับกัน เว็บแอปพลิเคชันนั้นพร้อมใช้งานออนไลน์ได้อย่างง่ายดาย ปราศจากปัญหาที่เกี่ยวข้องกับการเปิดตัวซอฟต์แวร์และการอัพเดต แต่มีประสบการณ์การโต้ตอบกับผู้ใช้ที่แย่มาก
แล้วคุณจะได้รับสิ่งที่ดีที่สุดจากทั้งสองโลกได้อย่างไร?
RIA เป็นสิ่งที่ดีที่สุดของทั้งสองโลก RIA ได้รับการเผยแพร่ผ่านทางอินเทอร์เน็ตและมีปฏิสัมพันธ์กับผู้ใช้มากมาย เนื่องจากการเกิดขึ้นของ Ajax ซึ่งเป็นวิธีการสำหรับเว็บแอปพลิเคชันในการส่งคำขอของเซิร์ฟเวอร์โดยไม่ต้องรีเฟรช เทคโนโลยีใหม่จึงเกิดขึ้นเพื่อเข้าร่วมการเคลื่อนไหวของ RIA
ด้วยเทคโนโลยีเหล่านี้ เฟรมเวิร์กจำนวนมากได้เกิดขึ้นเพื่อช่วยนักพัฒนาในการสร้างและปรับใช้เว็บแอปพลิเคชันที่หลากหลาย เช่น ไลบรารี JavaScript, ICEfaces, Adobe Flash 4 (รุ่นก่อนของ Flex 3), Microsoft Silverlight และ HTML5
ให้เราหารือเกี่ยวกับกรอบ RIA ทีละรายการ
ไลบรารี JavaScript สำหรับเว็บแอปพลิเคชัน
ไลบรารี JavaScript เช่น jQuery และ MooTools เป็นหนึ่งในเทคโนโลยีแรกๆ ที่สามารถช่วยปรับใช้เว็บแอปพลิเคชันแบบโต้ตอบและราบรื่นได้อย่างแท้จริง พวกเขาจัดเตรียมกรอบงาน RIA ที่จัดการฟังก์ชันการทำงานของอินเทอร์เฟซส่วนหน้าโดยใช้ประโยชน์จากการเขียนสคริปต์ฝั่งไคลเอ็นต์ เป็นไฟล์ Javascript พื้นฐานที่รวมเข้ากับฟังก์ชันการทำงานที่มีประโยชน์และผ่านการทดสอบข้ามเบราว์เซอร์ คุณสามารถใช้ Ajax ได้ เช่นเดียวกับจัดการการโต้ตอบตามเหตุการณ์ที่ผู้ใช้กำหนดทั่วไป เช่น การแสดงและการซ่อนเนื้อหา
สิ่งที่ได้รับความนิยมมากที่สุดในปัจจุบันคือ jQuery (โดยเฉพาะการใช้ jQuery UI), MooTools, YIU (Yahoo User Interface Library) และ EXTJS ไลบรารีเหล่านี้ประกอบด้วยส่วนประกอบของ RIA เช่น กริด แผนภูมิ และองค์ประกอบแบบฟอร์มที่ซับซ้อน รวมถึงเครื่องมือสำหรับการจัดการ Ajax สิ่งที่น่าสนใจที่สุดคือไลบรารี JavaScript สำหรับการพัฒนาเว็บส่วนใหญ่เป็นโอเพ่นซอร์ส
หากคุณไม่ต้องการซื้อสภาพแวดล้อมการพัฒนาแบบผสานรวม (IDE) แต่ยังต้องการฟังก์ชัน RIA ที่สวยงามและเป็นมืออาชีพบนเว็บไซต์ของคุณ ไลบรารี JavaScript ถือเป็นตัวเลือกที่ยอดเยี่ยม
เว็บไซต์ที่ใช้ไลบรารี JavaScript ได้แก่ Google, Digg, Yahoo, Amazon, Microsoft, Twitter และ Best Buy
ไอซ์เฟส
ICEfaces เป็นส่วนขยายของเฟรมเวิร์ก JavaServer Faces (JSF) มาตรฐานที่ออกแบบมาเพื่อลดความซับซ้อนของเวิร์กโฟลว์ของโปรแกรมเมอร์โดยการลบ JavaScript ออกจากสมการ กล่าวอีกนัยหนึ่ง ICEfaces จัดการ JavaScript/Ajax ทั้งหมดให้คุณผ่านทาง Java Application Interface ด้วยการลบการแนะนำที่ซับซ้อนของฟังก์ชัน JavaScript แบบกำหนดเองเหล่านี้ออกไป งานในการสร้างเว็บแอปพลิเคชันที่หลากหลายจึงง่ายขึ้นมาก
หากทีมส่วนใหญ่ของคุณเป็นนักพัฒนา Java หรือหากเว็บแอปพลิเคชันของคุณไม่จำเป็นต้องมีส่วนประกอบที่ซับซ้อนซึ่ง ICEfaces อื่นๆ ไม่มี หรือหากเว็บแอปพลิเคชันของคุณขับเคลื่อนด้วยเหตุการณ์ การใช้ ICEfaces ก็เป็นทางเลือกที่ดี หากเว็บแอปพลิเคชันของคุณขับเคลื่อนด้วยเหตุการณ์ โปรดแน่ใจว่าคุณเข้าใจว่า ICEfaces ไม่มีเทคโนโลยี "การพุชเซิร์ฟเวอร์" ที่แท้จริง ซึ่งรองรับโดย HTML5, Flash Builder 4 และ Silverlight อย่างไรก็ตาม ICEfaces ใช้วิธีการโพลแบบยาวเพื่อจำลองเทคโนโลยีพุชเซิร์ฟเวอร์
ไซต์ที่ใช้ ICEfaces ได้แก่ Boeing, NASA, Union Pacific, T-Mobile และ Bank of America
อะโดบีแฟลชบิลเดอร์ 4
Flash มีมานานแล้ว แต่การสร้างเว็บแอปพลิเคชันทั้งหมดโดยใช้ Flash เป็นเรื่องที่ยุ่งยากจนกระทั่งมีการเปิดตัว Flex ซึ่งเป็นส่วนขยายของ Flash ที่ให้ส่วนประกอบเว็บ RIA
สิ่งที่น่าตื่นเต้นที่สุดเกี่ยวกับ Adobe Flash Builder 4 คือฟีเจอร์ข้ามแพลตฟอร์มและเบราว์เซอร์ ทำให้โปรแกรมทำงานในลักษณะเดียวกันในทุกระบบปฏิบัติการและเบราว์เซอร์ทั้งหมด เมื่อเปรียบเทียบกับ JavaScript ซึ่งเบราว์เซอร์มีกลไก JavaScript ที่แตกต่างกันซึ่งจัดการและประมวลผลโค้ด Flash ของ Adobe มีกลไกเพียงตัวเดียวเท่านั้น ซึ่งผู้ใช้ติดตั้งผ่านปลั๊กอินของเบราว์เซอร์ Adobe Flash (ซึ่งโดยปกติแล้วจะเป็นเช่นนั้น)
แอปพลิเคชัน Flash Builder 4 สามารถทำได้เนื่องจากฝังอยู่ในหน้า HTML ซึ่งหมายความว่าเบราว์เซอร์เองก็ไม่มีผลกระทบต่อประสิทธิภาพของแอปพลิเคชัน ซึ่งหมายความว่าคุณสามารถเรียกใช้แอปพลิเคชันเว็บที่ซับซ้อนที่สุดบน IE6 ได้หากคุณเลือก (ซึ่งแน่นอนว่าเป็นเรื่องง่าย เนื่องจากปลั๊กอิน/เอ็นจิ้น Flash ได้รับการอัปเดตบ่อยครั้ง ดังนั้นจึงขึ้นอยู่กับเวอร์ชันของปลั๊กอินของผู้ใช้เพียงเล็กน้อยเท่านั้น)
แอปพลิเคชันเหล่านี้มักจะมาพร้อมกับการประมวลผลฝั่งเซิร์ฟเวอร์ เช่น การประมวลผลแบ็กเอนด์ Java และต้องใช้ Flash Builder 4 IDE เพื่อการพัฒนา
หากทีมของคุณพัฒนาโดยใช้ Java เป็นหลัก (เพราะทำงานได้ดีกับ Java) หรือหากแอปพลิเคชันของคุณใช้สถาปัตยกรรมที่ขับเคลื่อนด้วยเหตุการณ์ คุณสามารถเลือก Adobe Flash Builder 4 ได้
เว็บไซต์ที่ใช้ Flash เป็นเว็บแอปพลิเคชัน ได้แก่ Mint.com, Flickr และ Hyundai
ซิลเวอร์ไลท์
Silverlight โดยพื้นฐานแล้วคือ Adobe Flex/Adobe Flash เวอร์ชันของ Microsoft มีแรงผลักดันอยู่บ้าง แต่ดูเหมือนจะไม่ถึงระดับความนิยมที่ Adobe Flash มี
เห็นได้ชัดว่าแอปพลิเคชัน Silverlight เชื่อมโยงกับแบ็กเอนด์ .NET เนื่องจากเป็นผลิตภัณฑ์ของ Microsoft ซึ่งหมายความว่าคุณต้องคิดถึงการผสานรวมระหว่าง Silverlight/.NET และ Adobe Flex/[สคริปต์ฝั่งเซิร์ฟเวอร์บางตัว เช่น PHP]
หากเว็บแอปพลิเคชันของคุณต้องการกราฟิกที่ซับซ้อน หรือหากทีมของคุณเป็นนักพัฒนา .NET เป็นหลัก หรือหากแอปพลิเคชันของคุณใช้สถาปัตยกรรมที่ขับเคลื่อนด้วยเหตุการณ์ คุณสามารถเลือก Silverlight ได้
เว็บไซต์ที่ใช้ Silverlight เช่น Netflix
HTML5
HTML5 เป็นการพัฒนาล่าสุดในขบวนการ RIA HTML5 เป็นการผสานรวม HTML4, JavaScript, CSS, ไลบรารีโค้ด Javascript และ Falsh ที่ดีที่สุด โดยใช้ประโยชน์จากโมเดล API ให้เป็นข้อกำหนดเดียว HTML5 เป็นเทคโนโลยีแบบเปิด ซึ่งหมายความว่าจะไม่มีหน่วยงานกำกับดูแลเช่น Flash สำหรับ Adobe หรือ Silverlight สำหรับ Microsoft
เนื่องจากข้อกำหนด HTML5 ยังไม่เสร็จสมบูรณ์และ IE9 ยังไม่เผยแพร่ คุณยังคงต้องรออีกสักหน่อยเพื่อสร้างเว็บแอปพลิเคชันระดับที่ใช้งานจริง
ปัจจุบันเบราว์เซอร์หลักทั้งหมดยกเว้น IE8 รองรับ HTML5 เนื่องจาก IE8 ครองส่วนสำคัญของตลาดเบราว์เซอร์ จึงเป็นเรื่องยากมากที่ HTML5 จะกลายเป็นกระแสหลักก่อนการเปิดตัว IE9
เมื่อ HTML5 ได้รับการรองรับอย่างกว้างขวาง หากคุณไม่ต้องการซื้อและเรียนรู้ IDE (จำเป็นสำหรับเฟรมเวิร์ก เช่น Flex และ Silverlight) หากแอปพลิเคชันของคุณใช้สถาปัตยกรรมที่ขับเคลื่อนด้วยเหตุการณ์ หรือหากคุณต้องการใช้คุณสมบัติ HTML และ JavaScript ในตัว คุณลักษณะ API แทน การใช้ไลบรารี JavaScript ของบริษัทอื่น ดังนั้นการใช้ HTML จึงเป็นทางเลือกที่ดี
แม้ว่ากราฟิกจะได้รับการจัดการอย่างดีใน HTML5 แต่การใช้ Flash และ Silverlight ในการจัดการกราฟิกและภาพเคลื่อนไหวที่ซับซ้อนยังคงเป็นตัวเลือกที่ง่าย/เร็วขึ้นในขณะนี้
แอพ HTML5 เป็นอนาคตของอินเทอร์เน็ตหรือไม่? ไม่อย่างแน่นอน ตราบใดที่นักพัฒนาเว็บที่สร้างสรรค์และสร้างสรรค์ยังคงสร้างสรรค์สิ่งพิเศษต่อไป ก็จะมีเทคโนโลยีใหม่ๆ เกิดขึ้นเสมอ ซึ่งสามารถทำสิ่งมหัศจรรย์ที่ HTML5 หรือเทคโนโลยีเว็บอื่นๆ ไม่สามารถทำได้
ไลบรารี JavaScript, ICEfaces, Flash, Silverlight และ HTML5 มีอยู่เป็นอันดับแรกและสำคัญที่สุดสำหรับความคิดสร้างสรรค์และนวัตกรรม เครือข่ายในอนาคตจะประกอบด้วยเทคโนโลยีที่มีอยู่ร่วมกันมากมาย เช่นเดียวกับที่เป็นอยู่ในปัจจุบัน
ที่มา: sixrevisions.com
เรียบเรียงโดย: MazingTech
ขอขอบคุณ MazingTech สำหรับการสนับสนุนของคุณ