ما هو Bun.js ولماذا متحمس مجتمع JavaScript حيال ذلك؟

إن الحصول على أطر عمل ومكتبات جديدة طوال الوقت أمر تشتهر به JavaScript.في يوليو 2022 ، رحب النظام البيئي بالعضو الجديد: Bun.js.هنا ، سنلقي نظرة على Bun.js ونرى كيف يؤثر على نظام JavaScript البيئي الأوسع.

ما هو Bun.js؟

يُعرَّف Bun بأنه”وقت تشغيل JavaScript سريع الكل في واحد”. وهو الثالث من نوعه بعد Node.js و Deno.js ، الذي أنشأه Jarred Sumner باستخدام لغة البرمجة Zig.

يتمثل هدفها الرئيسي في توفير نظام أساسي لتشغيل JavaScript خارج المتصفح تمامًا مثل Node.js و Deno.js ، ولكن تقدم Bun تقدمًا لتوفير مستويات جديدة من السرعة والتعقيد المحسن.

كيف تطورت JavaScript

تم إنشاء JavaScript في الأصل للتشغيل داخل المتصفحات فقط ، وتعمل بمحركات مثل SpiderMonkey و V8.في عام 2009 ، قام Ryan Dahl بتضمين محرك V8 في برنامج C ++ أطلق عليه اسم Node.js.أصبحت JavaScript منذ ذلك الحين ذات صلة بالعديد من الاستخدامات مثل تطبيقات جانب الخادم والتطبيقات في الوقت الفعلي.

الوعود والوحدات النمطية ES هي أمثلة على ميزات JavaScript الحديثة التي لم تكن موجودة عند إنشاء Node.js.كما ألقى ريان حديثًا في عام 2018 حول الأشياء التي ندم عليها بشأن Node.js.ألهم ندمه إنشاء Deno.js الذي أصدره في عام 2020.

Deno هو ملف قابل للتنفيذ تم إنشاؤه باستخدام Rust ويهدف إلى معالجة جميع عيوب Node مثل الأمان والأداء ودعم TypeScript الأصلي.إنه أسرع بكثير وأكثر أمانًا من Node ، ويأتي مع أدوات غير موجودة في Node.js.

ومع ذلك ، لم تكتسب Deno التبني الهائل المتوقع حتى بعد أربع سنوات من الإصدار ، نظرًا لأن معظم الأنظمة الحديثة تعتمد بالفعل على Node وأن التغيير قد يكون مصدر إزعاج للمطورين.إن الاضطرار إلى إعادة كتابة معظم حزم npm للحصول على دعم Deno يتحدى أيضًا اعتماده.

في تموز (يوليو) 2022 ، ظهر وقت تشغيل جديد في الإصدار التجريبي -“Bun.js” – والذي كان موضوعًا شائعًا داخل وخارج مجتمع JavaScript.كان قابلية التشغيل البيني مع Node.js والأداء عالي السرعة الذي تدعي أنه يقدمه هو الحدث الرائع.وقد أثار أيضًا مناقشات حول وجود”مدمر العقدة” حوله.

كيف تتم مقارنة Bun.js مع Node.js و Deno.js؟

 

Node و Deno و Bun كلها أوقات تشغيل لجافا سكريبت خارج المتصفح ، وهذا لا يحيد الاختلافات بينها.

تمت كتابة Node.js بلغة C ++ و Deno in Rust و Bun in Zig.يقول موقع Bun على الويب:”إن التحكم المنخفض المستوى في الذاكرة ونقص تدفق التحكم المخفي في Zig يجعل من السهل كتابة البرامج السريعة”.

أثناء تشغيل كل من Node و Deno لمحرك Google V8 ، تستفيد Bun من أداء”البدء السريع” لمحرك JavaScriptCore من Webkit والذي يستخدمه Safari من Apple.تُظهر نتائج Benchmark من موقع الويب كيف يتفوق Bun على كل من Node و Deno في الأداء ، حيث يعمل على الأقل 3 مرات أسرع من كلا فترتي التشغيل.

يحتوي Bun على npm (مدير حزمة Node) مدمج مما يجعل تثبيت الحزمة من npm أمرًا سهلاً وسريعًا (20 ضعف السرعة في Node) ، كما أنه يدعم TypeScript وملفات TS و JSX ذات التحويل التلقائي.تشمل الميزات المثيرة الأخرى لـ Bun عميل SQLite3 يحمل في ثناياه عوامل ، وواجهات برمجة تطبيقات الويب مثل الجلب و WebSocket ، والتحميل التلقائي لمتغيرات البيئة ، وجهاز اختبار.

من بين الثلاثة ، يأخذ بون الكعكة للأداء.تظل Node هي الأكثر استقرارًا مع مجتمع كبير جدًا ، في حين أن Deno هو الأكثر أمانًا حاليًا.

هل سيؤثر Bun.js حقًا على النظام البيئي؟

يشعر النظام البيئي بالإثارة بإطلاق سراح بون.من المقبول أن الضجة حول بون كانت ضخمة منذ الإعلان.إنها بالتأكيد صفقة كبيرة.سيحب مطورو JavaScript حقًا النظر في سرعته”الفائقة” وأدواته القوية للإنتاجية.

علاوة على ذلك ، يضم خادم Bun’s Discord بالفعل أكثر من 2000 عضو مما يثبت الإثارة في المجتمع لهذه التكنولوجيا الجديدة.

ما هو مستقبل Node.js و Deno.js و Bun.js؟

لن يتم التخلص من جافا سكريبت في أي وقت قريبًا.في الواقع ، إنها إحدى التقنيات التي نحن على يقين من أنها ستظل موجودة في غضون 10 سنوات من الآن.لدى Node و Deno و Bun مستقبل أيضًا.

لا يزال يتم تحديث Node بانتظام ، وقد تم إصدار الإصدار 18.0 مؤخرًا ، وبالتالي يظل مستقبله كما هو حتى مع وجود Deno و Bun.تستخدم العديد من الشركات مثل PayPal Node في بنيتها التحتية ، وحتى الشركات الناشئة الجديدة تحذو حذوها.

الحالة مشابهة لـ Deno ، التي تم تطويرها بنشاط وتنمو بشكل أكبر.تتقدم شركة Deno أيضًا في حل SaaS لتوفير خدمات وقت تشغيل JavaScript مُدارة.

لا يزال Bun.js غير مستقر ولديه دعم محدود (تحتاج إلى نظام Windows الفرعي لنظام Linux لتشغيله على Windows).على الرغم من أنه يحتوي على العديد من الإمكانات ، إلا أنه لا يمكن أن يكون خيارًا لبرنامج جاهز للإنتاج الآن حيث لا يزال هناك الكثير من العمل للقيام به.

في حين أن المستقبل واعد بالتأكيد بالنسبة إلى Bun ، فمن المنطقي الاعتقاد بأن هذه التقنيات الثلاث ستنتهي على الأرجح بالتواجد معًا في النظام البيئي ، وليس إحداها تحل محل الأخرى.

قد يكون Bun.js عامل تغيير في اللعبة

مع Bun ، قد تتحسن الكثير من الأشياء حول JavaScript.ربما حان الوقت لاكتساب JavaScript اعتمادًا أفضل في المجالات ذات الأهمية الحاسمة للأداء مثل AI/ML ، وتطوير الألعاب ، وما إلى ذلك. انتقل إلى موقع Bun.sh على الويب لمعرفة كيفية التثبيت والبدء في التطوير باستخدام Bun.

Scroll to Top