מיר אַלע וויסן אַז דזשאַוואַסקריפּט סטאַרטעד אין די פרי טעג פון פּראָגראַממינג און דעוועלאָפּערס האָבן שוין ניצן עס פֿאַר יאָרן. אָבער, די דזשאַוואַסקריפּט סוויווע קען מאל פילן ווי אַ מייז צו נאַוויגירן.
דעוועלאָפּערס זענען טיפּיקלי געליימט דורך אָפּציעס און האַנדל-אָפס זינט עס זענען אַזוי פילע פאַרשידענע רונטימעס, לייברעריז און פראַמעוואָרקס בנימצא.
די פאָדערונג פֿאַר אַ רונטימע סוויווע וואָס איז נישט בלויז שנעל אָבער אויך נוציק פֿאַר דעוועלאָפּערס איז איינער פון די מערסט דרינגלעך טשאַלאַנדזשיז.
Bun 1.0, אַ רעוואלוציאנער דזשאַוואַסקריפּט רונטימע, זוכט צו יבערמאַכן די וועג מיר שאַפֿן און פאַרשפּרייטן דזשאַוואַסקריפּט אַפּלאַקיישאַנז.
באַן דיליווערז אַ ספּעציעל פוסיאָן פון פאָרשטעלונג און וסאַביליטי זינט עס איז געווען געבויט פֿון די דנאָ אַרויף פֿאַר גיכקייַט און עפעקטיווקייַט.
עס ס ניט נאָר אן אנדער רונטימע; עס איז אַ גאַנץ מכשירים אַרייַנגערעכנט אַ באַנדלער, פּרובירן ראַנער און פּעקל פאַרוואַלטונג.
אַזוי וואָס זאָל איר געבן באַן קיין ופמערקזאַמקייַט אין אַזאַ אַ פאַרנומען געגנט?
באַן הייבט זיך אָן צו אַדרעסירן עטלעכע פון די מערסט אַנויינג ישוז וואָס דעוועלאָפּערס טרעפן, אַזאַ ווי מעשוגאַס פון מאָדולע האַכלאָטע און די מאל מאַדאַלד רעגיאַליישאַנז אַרום CommonJS און ESM.
עס אָפפערס אַ מער סימפּלאַפייד און ינטואַטיוו אַנטוויקלונג דערפאַרונג דורך דעקאַנסטראַקטינג דעם קאַמפּלעקסיטי.
אַדדיטיאָנאַללי, Bun איז דיזיינד פֿאַר ויסגעצייכנט פאָרשטעלונג, און אַוטפּערפאָרמז באַוווסט קאָמפּעטיטאָרס ווי Node.js און Deno מיט זיין מערקווירדיק הטטפּ בעטן פּראַסעסינג פֿעיִקייטן.
אַדדיטיאָנאַללי, עס קענען זיין געוויינט ווי אַ קאַפּ-אין פאַרבייַט פֿאַר Node.js, וואָס העלפּס טימז מאַכן די קאַנווערזשאַן גרינגער.
אָבער, באַן ס טראָפּ אויף אַ קאָדזשענט דעוועלאָפּער דערפאַרונג (DX) איז אַרגיואַבלי די מערסט קאַנווינסינג אַרגומענט צו געבן עס אַ שאָס.
די פול לעבן פון דיין פּרויעקט, פון אַנטוויקלונג צו טעסטינג צו דיפּלוימאַנט, איז וויכטיק, ניט נאָר דער אַקט פון פּראָדוצירן קאָד.
באַן הבטחות צו ויסמיידן די פראַגמאַנטיד פּראַסעסאַז וואָס אָפט אַפעקץ דזשאַוואַסקריפּט אַנטוויקלונג דורך צושטעלן אַן ינאַגרייטיד מכשירים.
אַזוי, אין דעם פּאָסטן, מיר וועלן נעמען אַ גרונטיק קוק אין Bun 1.0, זייַן וויכטיק פֿעיִקייטן, ווי צו נוצן עס, און אַ פּלאַץ מער.
שכל באַן 1.0
Bun 1.0 איז אַ רעוואלוציאנער דזשאַוואַסקריפּט רונטימע וואָס פאַנגקשאַנז ווי אַ דעוועלאָפּער ס גיין-צו געצייַג.
באַן גייט העכער און ווייַטער נאָר עקסאַקיוטינג דיין קאָד דורך ינטאַגרייטינג אַ באַנדלער, פּרובירן ראַנער און פּעקל פאַרוואַלטונג גלייַך אין זיין יקאָוסיסטאַם.
עס גיט אַ דינסט וואָס איז פאַרגלייַכלעך צו האָבן אַ שווייצער אַרמיי מעסער פֿאַר דיין דזשאַוואַסקריפּט פּראַדזשעקס. עס איז בדעה צו גיין געשווינד — זייער געשווינד.
עס איז דיזיינד פֿאַר גיכקייַט און יקספּאַנדיד נאַטיווע-גיכקייַט פאַנגקשאַנאַליטי דורך זיין ימפּלאַמענטיישאַן אין Zig. עס איז געבויט אויף JavaScriptCore, דער מאָטאָר וואָס קאָנטראָלס Safari.
איצט איר קען פרעגן ווי באַן איז אַנדערש פון מכשירים ווי Node.js און Deno. זאל ס באַקומען סטאַרטעד אויף עס איצט.
זיין ערשטיק ציל איז צו דינען ווי אַ קאַפּ-אין פאַרטרעטער פֿאַר Node.js, אַרייַנגערעכנט קאַמפּאַטאַבילאַטי מיט Node ס מאָדולע האַכלאָטע אופֿן און געבויט-אין מאַדזשולז ווי "fs" און "דרך."
ווייַל פון דעם, דעוועלאָפּערס קענען באַשטימען זייער יגזיסטינג Node.js פּראַדזשעקס צו באַן אָן ברייקינג אַ שווייס. באַן ס פאָרשטעלונג, אָבער, איז ווו עס טאַקע שיינט.
עס איז אַ ויסגעצייכנט אָפּציע פֿאַר הויך-פאָרשטעלונג אַפּלאַקיישאַנז זינט עס כאַנדאַלז הטטפּ ריקוועס בעסער ווי Node.js און Deno.
באַן ס צוגאַנג צו דעוועלאָפּער דערפאַרונג (דקס) איז אן אנדער דיסטינגקשאַן. באַן אָפפערס די קייפּאַבילאַטיז געבוירן, ניט ענלעך Node.js און Deno, וואָס פאָרשלאָגן פראַגמאַנטיד טאָאָלקיץ וואָס דאַרפֿן דריט-פּאַרטיי סאַלושאַנז פֿאַר פּעקל פאַרוואַלטונג און טעסטינג.
דעוועלאָפּערס קענען קאַנסאַנטרייט מער אויף קאָד און ווייניקער אויף קאַנפיגיעריישאַן ווייַל פון דעם קאָוכיראַנט דקס, וואָס רימוווז די נויט צו שטיק צוזאַמען קייפל מכשירים און לייברעריז.
עס איז אַ פולשטענדיק לייזונג אַז טאַקאַלז ביידע פאָרשטעלונג און וסאַביליטי, באַשטעטיקן אַ נייַע באַר פֿאַר וואָס אַ דזשאַוואַסקריפּט רונטימע קענען זיין אלא ווי פשוט אן אנדער רונטימע אין די קאַנדזשעסטיד דזשאַוואַסקריפּט סעקטאָר.
האַרץ פֿעיִקייטן
קסנומקס. גיכקייַט
Bun 1.0 איז גאַנץ שנעל ווען עס קומט צו גיכקייַט. באַן נעמט פאָרשטעלונג אַפּטאַמאַזיישאַן אַ שריט ווייַטער דורך אַדינג געבוירן-גיכקייַט פיייקייט דורך Zig צו די JavaScriptCore מאָטאָר, וואָס איז שוין דיזיינד פֿאַר גיכקייַט.
די פיגיערז רעדן פֿאַר זיך: לויט בענטשמאַרקס.
באַן פּראַסעסאַז 66,706 הטטפּ ריקוועס פּער סעקונדע, וואָס לאָזן Node.js און Deno געזונט הינטער מיט 13,967 און 32,921 ריקוועס פּער סעקונדע, ריספּעקטיוולי.
דאָס איז נישט בלויז אַ קליין בוסט אין פאָרשטעלונג; דאָס איז אַ קוואַנטום שפּרינגען וואָס קענען באטייטיק טוישן פאַקטיש-וועלט אַפּלאַקיישאַנז, ספּעציעל יענע וואָס דאַרפן הויך טרופּוט און נידעריק לייטאַנסי.
2. עלעגאַנט אַפּיס
Bun 1.0 דיליווערז אַ זאַמלונג פון שיין און העכסט אָפּטימיזעד אַפּיס וואָס פאַרפּאָשעטערן רוטין אַקטיוויטעטן אין אַדישאַן צו זיין שנעל.
באַן האט איר קאַווערד צי איר קאַטער אַ הטטפּ סערווער, לייענען און שרייַבן טעקעס אָדער כאַשינג אַ פּאַראָל.
די אַפּיס זענען דיזיינד צו זיין פּשוט אָבער עפעקטיוו, מיט די נויט פֿאַר ווערבאָוס קאָד אָדער אנדערע לייברעריז פֿאַר פונדאַמענטאַל אַקטיוויטעטן.
פֿאַר בייַשפּיל, רופן Bun.serve()
צו קאַטער אַ הטטפּ סערווער קענען באַקומען איר אַרויף און פליסנדיק אין קיין צייט. באַן שטייט אויס ווייַל פון זיין טראָפּ אויף פּאַשטעס און עפעקטיווקייַט, וואָס מאכט עס ניט בלויז שנעל אָבער אויך זייער דעוועלאָפּער-פרייַנדלעך.
3. קאָוכיסיוו דעוועלאָפּער דערפאַרונג
די פאָקוס פון Bun 1.0 אויף פּראַוויידינג אַ סימלאַס אַנטוויקלונג דערפאַרונג (DX) איז וואָס עס טאַקע באַזונדער. באַן כולל אַ געבוירענער פּעקל פאַרוואַלטער, פּרובירן ראַנער און באַנדלער, אין קאַנטראַסט צו אנדערע רונטימז וואָס פאָרשלאָגן פראַגמאַנטיד טאָאָלקיץ.
ווי אַ רעזולטאַט, איר זענט באפרייט פון די מאַסע פון דזשאַגאַלינג פאַרשידן מכשירים אָדער באַשטעטיקן דריט-פּאַרטיי סאַלושאַנז צו פונקציאָנירן כאַרמאָוניאַסלי מיט איין אנדערן.
אויס פון די קעסטל, אַלץ איר דאַרפֿן איז פאָרשטעלן. אין אַדישאַן צו זיין קאַמפּאַטאַבאַל, דער פּעקל פאַרוואַלטער איז שנעלער ווי npm, pnpm און יאַרן.
אין אַדישאַן צו לויפן דיין טעסץ מער געשווינד, די פּרובירן ראַנער כולל דזשעסט-נוסח סינטאַקס, וואָס מאכט עס פּשוט צו באַשטימען אָן טשאַנגינג דיין קאָד.
ינסטאַלירונג פון Bun 1.0
אָנהייב מיט Bun 1.0 איז אַ פּשוט פּראָצעס וואָס איז בדעה צו באַקומען אַרויף און פליסנדיק געשווינד. באַן קענען שטיצן אַלע אָפּערייטינג סיסטעמען, אַרייַנגערעכנט macOS, Linux און אפילו Windows Subsystem for Linux (WSL). פליסנדיק אַ איין באַפֿעלן שורה שריפט קאַמפּליץ די ינסטאַלירונג פּראָצעדור. ווי צו ינסטאַלירן Bun 1.0 איז ווי גייט:
אלעס געטון! איר נאָר דאַרפֿן צו שרייַבן איין זאַץ צו אָנהייבן ויספאָרשן די באַן אַלוועלט. באַן ס דעדיקאַציע צו צושטעלן אַ גלאַט דעוועלאָפּער דערפאַרונג פון די אָנהייב איז געזען אין די פּאַשטעס פון ינסטאַלירונג.
אַדוואַנטאַגעס פון ניצן באַן 1.0
Bun 1.0 גאָר ענדערונגען די שפּיל אין טערמינען פון הויך-פאָרשטעלונג סערווער זייַט אַפּלאַקיישאַנז. עס איז די שליימעסדיק אָפּציע פֿאַר אַפּלאַקיישאַנז ווו גיכקייַט און נידעריק לייטאַנסי זענען יקערדיק ווייַל פון זייַן קאַפּאַציטעט צו פּראָצעס אַ סטאַגערינג נומער פון הטטפּ ריקוועס פּער סעקונדע.
די טיפּיש קאָמפּלעקס פּראָצעס פון דעפּענדענסי פאַרוואַלטונג איז סימפּלער דורך באַן, אַזוי עס ס ניט נאָר וועגן לויטער פאָרשטעלונג.
די דיפּענדאַנסיז פון דיין פּרויעקט קענען זיין געראטן לייכט מיט זיין געבוירן פּעקל פאַרוואַלטער, וואָס איז שנעלער ווי מער קאַנווענשאַנאַל ברירות ווי npm און יאַרן.
באַן ס העכסט קאַרב טיפּעסקריפּט שטיצן איז אן אנדער געגנט אין וואָס עס יקסעלז. אויב איר זענט אַ TypeScript ענטוזיאַסט, איר וועט ליבע ווי באַן לעץ איר ויספירן .ts
און .tsx
טעקעס אָן מאַדאַפייינג דיין tsconfig.json
סעטטינגס.
ווי אַ רעזולטאַט, דיין אַנטוויקלונג וואָרקפלאָוו וועט זיין מער סטרימליינד און עפעקטיוו און וועט נישט דאַרפן נאָך טראַנספּילערז אָדער סעטאַפּס.
לימיטאַטיאָנס
Bun 1.0 האט אַ פּלאַץ פון בענעפיץ, אָבער עס איז אויך וויכטיק צו דערקענען ווו עס קען פאַלן קורץ.
איין שטערונג וואָלט זיין די לעצטע הקדמה צו די דזשאַוואַסקריפּט סוויווע, וואָס מיטל אַז עס האט נישט נאָך האָבן די שטאַרק קהל באַקינג אָדער ביבליאָטעק יקאָוסיסטאַם וואָס סיזאַנד קאָמפּעטיטאָרס ווי Node.js און Deno האָבן.
דערצו, אפילו כאָטש Bun סטרייווז צו זיין אַ דירעקט פאַרבייַט פֿאַר Node.js, עס קען זיין זיכער צושטאנדן פון די ברעג אָדער באַזונדער Node.js מאַדזשולז וואָס זענען נישט גאָר קאַמפּאַטאַבאַל. דאָס קען מאַכן עס שווער פֿאַר דעוועלאָפּערס צו באַשטימען קאָמפּליצירט, אַלט Node.js אַפּפּס צו באַן.
סאָף
אין מסקנא, Bun 1.0 פּראָוועס צו זיין אַ פאַסאַנייטינג דזשאַוואַסקריפּט רונטימע, קאַמביינינג גיכקייַט, פּאַשטעס און אַ פולשטענדיק דעוועלאָפּער מכשירים.
עס איז אַ נאָוטווערדי אָפּציע רעכט צו זיין פיייקייט פֿאַר אָנפירונג הויך-פאָרשטעלונג סערווער-זייַט אַפּלאַקיישאַנז, ווי געזונט ווי זיין סימפּלאַפייד צוגאַנג צו דעפּענדענסי פאַרוואַלטונג און ערשטער-קורס TypeScript קאַמפּאַטאַבילאַטי.
באַן גיט אַ באַגריסונג אָפּציע פֿאַר דעוועלאָפּערס מיד פון אָנפירונג פילע מכשירים אָדער קוקן פֿאַר אַ רונטימע וואָס איז מער עפעקטיוו.
זיין פּלאַן און פאַנגקשאַנאַליטי באַווייַזן זיין דעדיקאַציע צו פֿאַרבעסערן די דעוועלאָפּער דערפאַרונג בעשאַס ינסטאַלירונג און דיפּלוימאַנט.
לאָזן אַ ענטפֿערן