Wikipedia เลือกใช้ Vue.js เหนือ React ในการอัพเกรดเฟรมเวิร์คให้ทันสมัย


Wikipedia ถือกำเนิดมาตั้งแต่ปี 2001 โดยใช้ซอฟต์แวร์ MediaWiki ที่เขียนขึ้นในยุคนั้น ซึ่งปัจจุบันก็มีหลายส่วนที่เริ่มล้าสมัยแล้ว

มูลนิธิ Wikimedia Foundation ในฐานะผู้ดูแลโครงการ Wikipedia จึงพยายาม "ยกเครื่อง" ซอฟต์แวร์ MediaWiki ให้ทันสมัยขึ้น หนึ่งในแผนการคือเปลี่ยนมาใช้เฟรมเวิร์คจาวาสคริปต์ตัวใหม่ๆ แทน jQuery ที่ใช้มานาน และเฟรมเวิร์คของตัวเองที่ชื่อ OOUI

คณะทำงานมีเกณฑ์การคัดเลือกเฟรมเวิร์คหลายข้อ เช่น ต้องนิยาม UI แบบ declarative, ตัว UI ต้องอัพเดตแบบ reactive (ตามการป้อนข้อมูลของผู้ใช้), เป็นโครงการโอเพนซอร์สที่มีชุมชนเหนียวแน่น, ประสิทธิภาพสูง, ยืดหยุ่นต่อการใช้งานหลายสถานการณ์

เฟรมเวิร์คที่นำมาพิจารณา มีตั้งแต่ Angular, Ember (สอบตกเรื่องความยืดหยุ่นที่นำมาใช้ในช่วงเปลี่ยนผ่าน) Svelte, Inferno, Preact (ชุมชนผู้ใช้มีขนาดเล็กเกินไป) Stimulus.js (ตกเรื่องการเรนเดอร์ฝั่งเซิร์ฟเวอร์) สุดท้ายเหลือตัวเลือก 2 รายที่เข้ารอบสุดท้ายคือ Vue.js และ React

สุดท้ายคณะทำงานเลือก Vue.js ด้วยเหตุผล 4 ข้อ

  1. ใช้งานโดยไม่ต้องมี front-end build tools ได้ดีกว่า React
  2. เรียกใช้ไลบรารีภายนอกน้อย มี dependency น้อย
  3. ไลบรารี Vue ค่อนข้างเสถียร ไม่มีปัญหาความเข้ากันได้ระหว่างเวอร์ชันใหญ่ๆ
  4. โครงการพัฒนา Vue ไม่อิงกับบริษัทใดบริษัทหนึ่งเกินไป (React อิงกับ Facebook)

ขั้นถัดไป ทีมงานของ Wikimedia จะค่อยๆ นำ Vue.js มาใช้ในโครงการนำร่องขนาดเล็กๆ ก่อน เพื่อทดสอบว่าใช้งานได้ดีจริงแค่ไหนในสถานการณ์จริงๆ