في أكتوبر 2022 ، أصدرت Node.js نسختها التاسعة عشر. جاء ذلك بعد ستة أشهر من إصدار Node.js v.18 ، والذي تضمن ترقيات مهمة مثل وحدة عداء الاختبار الأصلية.
من الميزات البارزة في Node.js 19 وضع الساعة التجريبي الجديد. يسمح لك هذا بإجراء تغييرات على الخادم الخاص بك دون الحاجة إلى إعادة تشغيله.
قبل Node.js 19 ، كان وضع المشاهدة ممكنًا فقط باستخدام مكتبات الجهات الخارجية. تعرف على كيفية استخدام وضع الساعة واستكشف التحديثات الأخرى لـ Node.js في الإصدار 19.
وضع الساعة الجديد للعقدة
يقدم Node.js 19 التجربة --يشاهد العلم ، الذي يعاد تشغيله خادم Node.js عندما يكتشف تغييرات في الملف المحدد. يمكنك القيام بذلك مسبقًا باستخدام مكتبة جهة خارجية تسمى nodemon، لكن التحديث يزيل الحاجة إلى التبعية عن طريق إضافة وظائفها إلى Node.js.
لإعادة تشغيل خادم Node.js باستخدام ملف --يشاهد علم ، قم بتشغيل العقدة الأمر مع --يشاهد علامة متبوعة باسم الملف الذي تريد إعادة تشغيله عندما تكتشف Node التغييرات.
على سبيل المثال ، اعتبر كتلة التعليمات البرمجية هذه كملف server.js ملف:
// server.js
مقدار ثابت صريح = يتطلب("يعبر");
مقدار ثابت التطبيق = صريح () ؛
مقدار ثابت المنفذ = 6060;
app.listen (PORT ، () => وحدة التحكم.سجل(التطبيق الاستماع على المنفذ: {PORT} دولار`));
لمشاهدة التغييرات في هذا الملف ، وإعادة تشغيل الخادم عند حدوثها ، قم بتشغيل هذا الأمر على جهازك الطرفي:
العقدة - خادم المراقبة
سيراقب الأمر ملف server.js الخاص بك ويعيد تشغيل خادم Node.js عندما يكتشف التغييرات التي تم إجراؤها في الملف.
تجدر الإشارة إلى أن هذه الميزة لا تزال تجريبية ، مما يعني أنك قد تواجه مشكلات أثناء استخدام --يشاهد علم لإعادة تشغيل الخادم الخاص بك.
ترقيات وإصلاحات أخرى
تتضمن التحسينات والإصلاحات الأخرى المرفقة مع Node.js 19 ما يلي.
HTTP Keep-Alive افتراضيًا
ال http / https وحدة حافظ على حياتك يتحكم الخيار في ما إذا كان يجب الاحتفاظ بالاتصال بالخادم بعد إكمال الطلب. في الأصل ، يجب عليك ضبط ملف حافظ على حياتك الخيار ل حقيقي يدويا. يوجه هذا الخيار الخادم للاحتفاظ بالاتصال مفتوحًا وإعادة استخدامه للطلبات اللاحقة.
في Node.js 19 ، فإن ملف حافظ على حياتك يتم تعيين الخيار على صواب افتراضيًا. ستقلل هذه الإضافة بشكل كبير من النفقات العامة لإنشاء اتصالات جديدة.
استقرار WebCrypto API
واجهة برمجة تطبيقات WebCrypto هي تطبيق Node.js لـ معيار Web Crypto API. مع Node.js 19 ، أصبح تطبيق WebCrypto مستقرًا الآن ، باستثناء ملف Ed25519, Ed448, X25519، و X448 الخوارزميات.
يمكنك الوصول إلى واجهة برمجة التطبيقات هذه باستخدام ملف هذا وحدة أو العقدة: بادئة ذلك تم تقديم Node.js 18 للتمييز بين وحدات Node.js الأساسية ومكتبات الجهات الخارجية.
على سبيل المثال:
// عقدة: بادئة
مقدار ثابت التشفير = يتطلب("عقدة: تشفير");
// globalThis
مقدار ثابت webcrypt = globalThis.crypto ؛
تعديلات دقة ESM المخصصة
يزيل Node.js 19 الملف التجريبي السابق - دقة المواصفات التجريبية علَم. قدم هذا دعمًا تجريبيًا لتحديد موقع الملفات باستخدام محددات الحزمة ، على غرار كيفية استيراد ECMAScript للوحدات النمطية.
قام Node.js بإزالة هذه العلامة لأنه يمكنك نسخ وظائفها باستخدام برامج التحميل المخصصة. يمكنك استخدام لوادر مخصصة لدعم المزيد من تنسيقات الوحدات أو لمعالجة الوحدات بشكل أكبر قبل التحميل لأنها تتيح لك تقديم منطقك الفريد لتحميل الوحدات النمطية ومعالجتها.
إزالة دعم DTrace / SystemTap / ETW
DTrace و SystemTap و ETW (تتبع الأحداث لنظام التشغيل Windows) هي وحدات تقدم تتبعًا ديناميكيًا وتحليلًا للبرامج قيد التشغيل. في الأصل في Node.js ، يمكنك استخدامها لجمع البيانات حول نشاط التطبيق ، بما في ذلك مؤشرات الأداء والأخطاء وغيرها من حالات وقت التشغيل المحتملة.
في Node.js 19 ، أزال Node.js دعم DTrace و SystemTap و ETW لأن التعقيد الذي ينطوي عليه الحفاظ على هذه الوحدات وتحديثها لا يزال يستحق كل هذا العناء. لذلك ، لتحديد أولويات مواردهم ، فقد أسقطوا الدعم لهم.
الترقية إلى Node.js 19
يقدم Node.js 19 العديد من الميزات والتحسينات التي تستحق النظر في تطبيقك ، بما في ذلك وضع الساعة الجديد ، من بين أمور أخرى تمت مناقشتها أعلاه. للترقية إلى Node.js 19 ، توجه إلى الموقع الرسمي وقم بتنزيل الإصدار الحالي.