Meta เปิดตัว React Compiler โครงการทดลองของ React ที่ช่วยปรับแต่งประสิทธิภาพของแอพให้ดีขึ้น ลดจำนวนคอมโพเนนต์จะถูกเรนเดอร์ใหม่ให้เหลือน้อยที่สุด เมื่อเกิดการเปลี่ยนสถานะขึ้นมา
ชื่อของ React Compiler อาจชวนงงๆ อยู่บ้าง เพราะ React เขียนด้วย JavaScript ที่เป็นภาษาแบบ interpreter แต่จริงๆ แล้ว React Compiler ทำหน้าที่เข้ามาอ่านโค้ดของเราเพื่อช่วยปรับแต่งประสิทธิภาพของโค้ดให้อัตโนมัติ ช่วยทำงานด้านแคช (memoization) ที่ก่อนหน้านี้โปรแกรมเมอร์ต้องทำเอง เช่น useMemo, useCallback, React.memo
Joe Savona วิศวกรของ Meta ที่พัฒนาโครงการนี้ เปรียบเทียบการทำงานของ React Compiler ว่าเหมือนกับ TypeScript หรือเป็นเอนจิน JavaScript อย่าง V8 ที่มีคอมไพเลอร์ลักษณะแบบเดียวกัน มาช่วยปรับปรุงประสิทธิภาพของโค้ดอีกที
Meta เริ่มนำ React Compiler มาใช้งานกับแอพของตัวเองแล้วคือ หน้าเว็บ Instagram.com และ Meta Quest Store ผลลัพธ์ที่ได้คือโค้ดทำงานเร็วขึ้น 2 เท่า การเรียกแอพครั้งแรกเร็วขึ้น 12% ซึ่งในสเกลผู้ใช้ระดับ Meta ถือว่าคุ้มค่ามาก
ตัวซอร์สโค้ดเปิดเป็นโอเพนซอร์สบน GitHub
ที่มา - React , The New Stack
React Compiler is open source!
— React (@reactjs) May 15, 2024
Comments
ดีเลยนะ ถ้าช่วยลดการ render ลงได้
..: เรื่อยไป
ใช้คำว่า compiler ก็ตรงไปตรงมาดี เพราะหนึ่งในหน้าที่ทั่วไปของ compiler คือ code optimizationและไม่ได้ตั้งใจทำไว้ให้ใช้ตอน run program
"React Compiler requires React 19 Beta" จบเลย