React Conf 2025 (Day 1)
(frontoverflow.com)สัปดาห์ที่แล้วมีงาน React Conf 2025 จัดขึ้น
ในวันแรก การบรรยายส่วนใหญ่เป็นหัวข้อที่เกี่ยวข้องกับ React
-
React Keynote
- ประกาศ React 19.1 (Owner Stacks), 19.2 (Activity/useEffectEvent/Partial Pre-rendering), Canary (View Transitions)
- เปิดตัว React Compiler 1.0 อย่างเป็นทางการ พร้อมระบบ memoization อัตโนมัติและการวิเคราะห์โค้ด
- เริ่มต้นธรรมาภิบาลที่ขับเคลื่อนโดยชุมชนผ่านการก่อตั้ง React Foundation
-
View Transitions and Activity
- ใช้
<Activity />เพื่อสลับสถานะ visible/hidden และคง state ไว้อัตโนมัติ โดยไม่ต้อง lift state ขึ้น - ใช้
<ViewTransition />เพื่อทำแอนิเมชันแบบ declarative ได้แม้ใน Server Components - จัดการสถานะ UI และแอนิเมชันได้แบบ composable และ declarative
- ใช้
-
Profiling with React Performance Tracks
- ตั้งแต่ React 19.2 เป็นต้นไป รองรับการแสดงภาพไทม์ไลน์งานของ React ใน Chrome DevTools
- ระบุตำแหน่งคอขวดด้านประสิทธิภาพได้ด้วย Scheduler/Components/Server Components Track
- เพิ่ม Suspense Panel เพื่อแสดงสถานะของ Suspense boundary (เปิดตัวปลายปี 2025)
-
In case you missed the memo
- Sanity Studio ใช้ React Compiler เพื่อ memoize คอมโพเนนต์มากกว่า 1,000 ตัว และเพิ่มประสิทธิภาพเฉลี่ย 20~30%
- สามารถทำ optimization แบบละเอียดได้ เช่น conditional subscription ของ context และ branch memoization พร้อมทั้งตรวจพบบั๊กได้
- แนะนำให้นำมาใช้ได้ทันทีและโฟกัสกับ "Make it work" โดยไม่ต้องกังวลเรื่อง memoization
-
Async React
- Transitions, Suspense และ Server Components คือโครงสร้างใหม่สำหรับการสร้างแอปแบบ asynchronous
- แก้ปัญหาการกระพริบของ loading states ด้วย Suspense, router และ caching
- ประสาน data fetching กับการอัปเดต UI ด้วย
startTransitionและการผสานเข้ากับแอนิเมชัน
-
React and AI
- Meta ใช้ AI สำหรับแก้บั๊กและสำรวจโค้ด โดยฉีด context ผ่าน LLM rules
- มุ่งเน้นการระบุ context ที่ถูกต้อง และใช้ AI เป็นพาร์ตเนอร์ในการ pair programming
- API ที่มีเสถียรภาพของ React เป็นฐานสำหรับสร้างเครื่องมือ AI และเป็นโอกาสในการเปลี่ยนสายอาชีพสู่ AI Engineer
-
Exploring React Performance
- ความสมดุลระหว่าง Data Model และ Rendering Algorithm เป็นสิ่งสำคัญ และ React Compiler ช่วยเพิ่มประสิทธิภาพได้
- แนวทางแบบ domain-specific เหนือกว่าวิธี incremental algorithm ทั่วไป
- ใช้ Transitions, Suspense, Virtualization,
<Activity />และ Data Modeling
-
The invisible craft of great UX
- รายละเอียดเล็ก ๆ อย่างการคลิก-ลาก-ปล่อย, popover ตามแต่ละ OS, การหน่วงเวลาของ tooltip ล้วนส่งผลต่อ UX อย่างมาก
- แก้ปัญหาด้วยการตีความเจตนาของผู้ใช้แทนการยึดตาม DOM events เช่น การตรึง/วาร์ป scrub cursor
- เพิ่มประสิทธิภาพด้วยการนำ popover หลายตัวกลับมาใช้เป็นองค์ประกอบเดียว (300 ตัว→1 ตัว)
-
Building an MCP Server for a React Component
- MCP คือมาตรฐานโอเพนซอร์สสำหรับเชื่อมต่อ AI กับระบบภายนอก โดยให้รูปแบบมาตรฐานคล้าย USB-C
- AG Grid ฝังเอกสาร 360,000 ชิ้นแล้วเก็บใน Postgres เพื่อส่งมอบ context ที่แม่นยำให้ LLM
- รองรับการค้นหาเอกสารและการสร้างคอมโพเนนต์อย่างรวดเร็วผ่าน Prompts/Resources/Tools
-
Why React Native apps make all the money
- React Native ทำผลงานได้ดีกว่าในด้านอัตราการเปลี่ยนเป็นลูกค้าที่จ่ายเงิน รายได้ต่อการติดตั้ง และ LTV
- การพัฒนาแบบข้ามแพลตฟอร์มช่วยให้ออกสู่ตลาดได้เร็ว และใช้กลยุทธ์การทำรายได้ที่สอดคล้องกันได้
- RevenueCat SDK ช่วยรองรับการทำรายได้ได้ง่าย เช่น paywall, analytics และการทดลองราคา
-
Modern emails using React
- การพัฒนาอีเมลทำได้ยากเพราะข้อจำกัดด้านการรองรับ CSS และความแตกต่างของการเรนเดอร์ในแต่ละไคลเอนต์
- React Email รองรับการสร้างแบบ component-based, การทดสอบความเข้ากันได้ และการตรวจสอบลิงก์
- แปลงเป็น HTML ด้วย render function และมีการใช้งานผ่าน Resend API โดยบริษัทใหญ่หลายแห่ง
-
React team Q&A
- React Compiler นำมาใช้ได้อย่างปลอดภัยหากปฏิบัติตาม Rules of React และโค้ดใหม่ไม่จำเป็นต้องใช้ useMemo/useCallback
- ใช้ AI เป็นพาร์ตเนอร์ในการ pair programming และความสามารถในการออกแบบสถาปัตยกรรมยังคงสำคัญ
- React Foundation สะท้อนการลดบทบาทของ Meta ตลอด 5 ปีที่ผ่านมา พร้อมการขยายชุมชนและการขอให้รักษาบรรยากาศที่เป็นมิตร
7 ความคิดเห็น
ขอบคุณครับ
ขอบคุณครับ!
อัปเดตของ React Native 0.82 ก็ดูน่าสนใจมากเหมือนกันนะครับ
ใช่ครับ
เพราะเซสชันเกี่ยวกับ React Native ส่วนใหญ่จัดในวันที่สอง ดังนั้นน่าจะเป็นประโยชน์ถ้าดูเนื้อหางานนำเสนอของวันที่สองด้านล่างนี้!
https://th.news.hada.io/topic?id=23670
ขอบคุณครับ อ่านเพลินมาก!
ขอบคุณครับ!
เนื้อหาการบรรยายค่อนข้างยาว ดังนั้นถ้าใครอยากทราบรายละเอียดทั้งหมด แนะนำให้อ่านบทความในลิงก์ครับ
แล้วผมจะสรุปเนื้อหาการบรรยายในวันที่สองมาลงให้เร็ว ๆ นี้ครับ!