ทำไม Firefox 57 ถึงใช้กับส่วนขยายเดิมไม่ได้?

หลาย ๆ คนคงได้ข่าวกันมาบ้างแล้วว่า Firefox 57 นี้จะใช้ส่วนขยายแบบเดิมที่เขียนขึ้นด้วย XUL + XPCOM และ Add-on SDK จะใช้ไม่ได้อีกต่อไป และจะรองรับส่วนขยายที่เขียนด้วย WebExtensions แทน ซึ่งวันนี้จะเล่าถึงเหตุผลว่าทำไม Mozilla ถึงยอมทิ้ง XUL + XPCOM แล้วไปใช้ WebExtensions

XUL + XPCOM เป็นเทคโนโลยีที่ใช้มาตั้งแต่ Firefox ได้ถือกำเนิดขึ้นมาใหม่ๆ ซึ่งนับตั้งแต่ตอนนั้นถึงตอนนี้ก็ 10 กว่าปีแล้ว ข้อดีของการใช้เทคโนโลยีตัวนี้คือ เข้าถึงระบบของ Firefox ได้ลึกมาก ๆ และสามารถเชื่อมต่อกับภาษาอื่นได้ด้วย นั้นก็คือจุดแข็งและจุดเริ่มต้นของเบราว์เซอร์ที่สามารถติดตั้งส่วนขยายได้ จนความสามารถของ Firefox นั้นก็กินขาด IE6 ในสมัยนั้นเพราะส่วนขยายที่เพิ่มได้ไม่จำกัด และเป็นมาตรฐานของ​เบราว์เซอร์ตัวอื่น ๆ ว่าต้องรองรับส่วนขยายในตัว

หลายคนคงเห็นภาพนี้ มีคนเคยพยายามติดตั้งส่วนขยายนับร้อยอัน

แต่ด้วยความสามารถที่เยอะเกินไป ทำให้ Firefox นั้นบวม ช้า และถูกเจาะง่ายมาก อย่างที่หลายคนเคยบ่นกัน หนำซ้ำยังไม่พอ XUL + XPCOM เป็นอุปสรรคก้อนโตที่ทำให้การแยกโพรเซส Firefox หรือโปรเจ็ค Electrolysis นั้นล่าช้าไปหลายปีจนถึงขั้นต้องหยุดโปรเจ็คนี้ไป 2 ปีเต็ม (ข้อมูลจาก Ars Technica)

เนื่องจาก Firefox นั้นเสียส่วนผู้ใช้ไปเยอะ โดยส่วนใหญ่ก็หนีไปใช้ Google Chrome กัน โดยเหตุผลหลัก ๆ เลยคือ เร็วกว่าอย่างเห็นได้ใช้ แถมหนำซ้ำ Firefox OS ที่ปั้นมาอย่างดีก็ต้องล้มเลิกไปเพราะสู้เจ้าตลาดอย่าง Android กับ iOS เพราะฉะนั้น Mozilla ก็เลยต้องหวนกลับมาโฟกัสที่ Firefox เหมือนเดิม แต่คราวนี้ต้องคิดใหม่ทำใหม่ให้ Firefox นั้นต้องเร็ว ไฉไล เสถียร และปลอดภัย

และเพื่อการจะไปถึงเป้าหมายนั้นให้ได้ก็ต้องยอมทิ้งสิ่งที่ตัวเองภาคภูมิใจที่สุดอย่างเทคโนโลยี XUL + XPCOM แล้วเปลี่ยนไปใช้ WebExtensions ที่ด้อยกว่า และแน่นอนว่าการทำอย่างนี้ก็ต้องถูกนักพัฒนาและผู้ใช้ก่นด่า แต่ก็แลกกับการใช้ WebExtensions ที่เบราว์เซอร์ในตลาดส่วนใหญ่อย่าง Chrome Opera และ Edge ใช้เทคโนโลยีตัวเดียวกันทำให้การพอร์ทโค้ดไปเบราว์เซอร์ตัวอื่น ๆ นั้นไม่ยากเย็นนัก แถมการถอดเทคโนโลยีตัวเก่าออกไปก็ทำให้ใส่เทคโนโลยีตัวใหม่อย่าง Quantum เข้ามาได้ง่ายขึ้น

สรุปสั้นง่าย ๆ คือ Firefox จำเป็นต้องถอดเทคโนโลยีเก่าอย่าง XUL + XPCOM เพื่อเปิดทางไปสู่การพัฒนาที่เข้ากับยุคสมัยใหม่ เพื่ออัปเกรดตัวเองให้เร็ว เสถียร ทันสมัย และปลอดภัยกว่าเดิม

1 response

Post a comment

  1. Pingback from Firefox (57) Quantum ออกแล้ว ก้าวสำคัญของ Firefox ยุคใหม่ | Mozilla Thailand Community on :

    […] XPCOM และ Addon SDK ไม่สามารถใช้ในรุ่นนี้ได้ (อ่านเพิ่มเติม) […]

    ตอบกลับ

ส่งความคิดเห็น

This site uses Akismet to reduce spam. Learn how your comment data is processed.