המחיר הנסתר של כל התקנת npm
בילנו עשר שנים בהורדת ספריות כדי לתקן את JavaScript.
השתמשנו ב-moment.js עבור תאריכים. השתמשנו ב-lodash עבור פונקציות עזר. השתמשנו ב-node-fetch עבור בקשות. אלו היו פתרונות מעקף לדברים שהפלטפורמה לא יכלה לעשות.
הם היו שימושיים אז. הם משקולת מיותרת עכשיו.
בשנת 2026, השינויים החשובים ביותר מגיעים מגופי תקנים כמו TC39 ו-W3C. הפלטפורמה סוף סוף משתווה לספריות.
הסימן למפתח בכיר (senior engineer) הוא כבר לא לדעת איזו ספרייה לבחור. זה לדעת מתי בכלל לא צריך ספרייה.
לכל תלות (dependency) יש מחיר: • משקל ה-bundle שמאיט את טעינת הדפים. • עומס קוגניטיבי על הצוות שלך. • סיכוני אבטחה בשרשרת האספקה שלך.
שלוש תכונות פלטפורמה חדשות הופכות תלויות ישנות למיותרות:
Temporal אובייקט ה-Date הישן שבור. הוא גורם לבאגים של אזורי זמן (timezone) ומטפל במתמטיקה בצורה גרועה. Temporal מחליף אותו. הוא מפריד בין זמן מוחלט לזמן קלנדרי. הוא מקשה על כתיבת קוד בצורה שגויה. אם אתם מתחילים פרויקט חדש, הפסיקו להשתמש ב-Date. השתמשו ב-Temporal.
Iterator Helpers מתודות מערך סטנדרטיות כמו
.map()ו-.filter()יוצרות מערכים חדשים בכל שלב. זה מבזבז זיכרון על מערכי נתונים גדולים. Iterator Helpers מאפשרים lazy evaluation. הם מעבדים פריטים אחד אחד. הם עוצרים ברגע שהם מוצאים את מה שהם צריכים. זה שומר על האפליקציה שלכם מהירה ועל קצב פריימים (frame rate) גבוה.Web Streams API הפסיקו לחכות שקבצים שלמים ירדו לפני שאתם מעבדים אותם. שליפה (fetching) קונבנציונלית מאגנת (buffers) את כל התגובה בזיכרון. זה גורם לקפיצות בשימוש בזיכרון (memory spikes). Web Streams מאפשרים לכם לעבד נתונים צ'אנק אחרי צ'אנק כשהם מגיעים. זה חיוני עבור תגובות AI וטיפול בקבצים גדולים.
Vanilla JavaScript הוא כבר לא בחירה נישתית. זו הדרך הביצועית והמאובטחת ביותר לבנות אפליקציות production. הפלטפורמה פתרה את הבעיות שהפכו את הספריות לנחוצות.
הפסיקו לתקן (patching) את השפה. התחילו להשתמש בפלטפורמה.
מה עדיין רץ ב-bundle של ה-production שלכם שהדפדפן כבר מטפל בו?
