התוכנית ל-React 18

8 ביוני 2021 מאת אנדרו קלארק, בריאן ווהן, כריסטין אברנת’י, דן אברמוב, רייצ’ל נאבורס, ריק הנלוןK_5__ וובסטר](https://twitter.com/sethwebster)


צוות React שמח לשתף כמה עדכונים:

  1. התחלנו לעבוד על React 18, שתהיה גרסת ה-major הבאה שלנו.
  2. קבוצת העבודה של הקמנו כדי להכין את הקהילה לאימוץ הדרגתי של אפשרויות חדשות ב-React 18.
  3. פרסמנו React 18 אלפא כדי שמחברי ספריות צריך לנסות עלת משוב.

העדכונים האלה מיועדים בעיקר למתחזקי ספריות צד שלישי. אם אתם לומדים, מלמדים או משתמשים ב-React לבניית אפליקציות למשתמשי קצה, אפשר להתעלם בבטחה מהפוסט הזה. אבל אתם בהחלט לבוא אחרי הדיונים ב-React 18 Working Group אם זה מסקרן אתכם.


מה מגיע ב-React 18

כשתשוחרר, React 18 תכלול שיפורים מובנים (כמו אצווה אוטומטית), APIs חדשים (כמו startTransition), וגם renderer חדש לשרת בסטרימינג עם תמיכה מובנית ב-React.lazy.

היכולות האלה מתאפשרות בזכות יכול מנגנון opt-in חדש לנו ב-React 18. קוראים לו “Concurrent rendering”, והוא ל-React להכין כמה גרסאות של ה-UI בו-זמנית. זה ranking שמתרחש בעיקר מאחורי הקלעים, אבל הוא פותח אפשרויות חדשות לשיפור גם הביצועים מבצעיים וגם חידוש המהירות הנתפסת של האפליקציה.

אם יש עקבות אחרי המחקר שלנו לגבי עתיד React (אנחנו לא מצפים שכן), אולי שמעתם על משהו שנקרא “מצב בו-זמני” או שהוא צריך לשבור את האפליקציה שלכם. בעקבות משוב כזה מהקהילה, עיצבנו מחדש את אסטרטגיית השדרוג כך שתתמוך באימוץ הדרגתי. במקום “מצב” של הכול-או-כלום, עיבוד התאמה יופעל רק עבור עדכונים שמופעלים על ידי אחת היכולות החדשות. בפועל זה ש-תוכלו לאמץ את TK אומר_1 18 בלי כתיבה מחדש, ולנסות יכולות חדשות בקצב שלכם.

אסטרטגיית אימוץ הדרגתית

כאשר ש-concurrency ב-React 18 הוא opt-in, אין שינויים שוברים משמעותיים בהתנהגות קומפונטות כברירת מחדל. אפשר לשדרג ל-React 18 עם מעט מאוד שינויים בקוד האפליקציה, או בלי שינויים בכלל, במאמץ דומה לשחרור major טיפוסי של React. על סמך שלנו עובדים בהסבת כמה אפליקציות ל-React 18, אנחנו מצפים שמשתמשים רבים יצליחו לשדרג תוך אחר צהריים אחד.

הוצאנו לפועל בע”מ אלפי קומפונטות ב-Facebook, ובניסיון שלנו רוב קומפונטות React “פשוט עובדות” שינויים נוספים. אנחנו מחויבים לדעת שזה יהיה שדרוג לכל הקהילה, אנחנו מכריזים היום על React 18 Working Group.

עבודה עם הקהילה

שחרור הזה מנסים משהו: הזמנו פאנל של מומחים, מפתחים, מחברי ספריות ומדריכים מכל קהילת React להשתתף ב-React 18 Working Group, לתת משוב, שאלות ולשתף פעולה סביב השחרור.

המטרה להשתמש של React 18 Working Group היא להכין את האקו-סיסטם לאימוץ חלק והדרגתי של React 18 באפליקציות ובספריות קיימות. ה-Working Group מתארח ב-GitHub Discussions, מידע ומידע ציבורי ככל יכול גם לקרוא אותו שחר בלוג., שנת מצאי.

למידע נוסף על שדרוג ל-React 18 ומשאבים נוספים על השחרור, ראו את פוסט ההכרזה על React 18.

גישה ל-React קבוצת עבודה 18

כולם יכולים לקרוא את הדיונים ב-מאגר React 18 Working Group.

מכיוון שאנחנו מצפים לגל עניין ראשוני, רק חברים מוזמנים יורשו ליצור או להגיב בשרשורים. עם זאת, השרשורים גלויים לגמרי לציבור, כך שלכולם יש גישה לאותו מידע. אנחנו מאמינים שזה איזון טוב בין יצירת סביבה פרודוקטיבית לחברי הקבוצה לבין שקיפות מלאה מול הקהילה הרחבה.

כמו תמיד, אפשר לשלוח דיווחים באגים, שאלות ומשוב כללי ל-מעקב אחר בעיה שלנו.

איך לנסות React 18 אלפא כבר היום

גרסאות אלפא חדשות מתפרסמות קבועות ל-npm עם התגית @alpha. הגרסאות האלה נבנות מהקומיט האחרון במאגר חדשות שלנו. כשיכולת או תיקון באג מתמזגים, הם יופיעו ב-alpha ביום העבודה הבא.

ייתכנו שינויים משמעותיים בהתנהגות או ב-API בין שחרורי אלפא. חשוב לזכור ש-שחרורי אלפא לא מומלצים לאפליקציות ייצור מול משתמשים.

לוח זמנים משוער לשחרור React 18

יש לנו כרגע תאריך שחרור ספציפי, אבל מצפים שידרו כמה חודשים של משוב ואיטרציה לפני ש-__TK_018 תהיה מוכנה לרוב אפליקציות הייצור.

  • ספריית אלפא: זמין היום
  • בטא ציבורית: לפחות כמה חודשים
  • מועמד לשחרור (RC): לפחות כמה שבועות אחרי בטא
  • זמינות כללית: לפחות כמה שבועות אחרי RC

פרטים נוספים על לוח הזמנים המשוער זמינים ב-Working Group. נפרסם עדכונים בבלוג הזה כשנתקרב לשחרור ציבורי.