لغات البرمجة: يصل Java 19 وإليك الجديد

شترستوك-518789926.jpg

الصورة: شترستوك

أعلنت شركة Oracle عن توفر Java 19 و Oracle JDK 19 للمطورين ، وهي أحدث إصدارات ما يمكن القول أنه لغة البرمجة الأكثر شعبية في العالم. 

JDK (مجموعة تطوير Java) 19 تصل بعد حوالي ستة أشهر من Java 18 وبعد عام بالضبط من Java 17 - أحدث إصدار دعم طويل المدى (LTS) من Java.

مع إصدار Java 17 ، أعلنت Oracle عن خطط لنقل إصدارات JDK LTS من كل ثلاث سنوات إلى كل عامين ، مما يعني أن إصدار LTS القادم سيكون Java 21 في سبتمبر 2023. 

نسخة مفتوحة المصدر من JDK 19 OpenJDK 19 يتوفر أيضًا من Oracle ضمن نطاق رخصة جنو العمومية ، الإصدار 2 ، مع استثناء مسار الفصل.

أيضا: أشهر لغات البرمجة وأماكن تعلمها

تطلق Oracle الآن إصدارات جديدة من Java كل ستة أشهر في مارس وسبتمبر بهدف منح المطورين تحديثات أصغر ولكن أكثر تكرارا من تحديثاتها الضخمة السابقة كل بضع سنوات. تظل إصدارات LTS مدعومة لمدة ثماني سنوات على الأقل. 

كما لاحظ شارات تشاندر، مدير Oracle لإدارة منتجات Java SE ، كان JDK 17 ثاني LTS بموجب إيقاع الإصدار الذي تم الإعلان عنه في عام 2018. مع ذلك ، قدمت Oracle "شروط ترخيص جديدة وأبسط" تسمح للشركات باستخدامها "بدون تكلفة على الأقل في اليوم التالي" ثلاث سنوات ، مما يتيح تداخلًا لمدة عام كامل مع إصدار LTS التالي ".  

أوضحت Oracle في ذلك الوقت أنه يتم توفير JDK 17 وإصدارات JDK المستقبلية بموجب ترخيص شروط وأحكام Oracle بدون رسوم (NFTC)، ترخيص مجاني للاستخدام لـ Java 17. يستمر الترخيص لمدة عام بعد إصدار LTS التالي ثم ينتقل Java 17 إلى ترخيص Oracle Technology Network

جافا 17 كانت صفقة كبيرة. استطلاع أجراه صانع أدوات Java dev Perforce وجدت في وقت سابق من هذا العام أن 37٪ من مستخدميها ما زالوا يستخدمون Java 8 ، الذي تم إصداره في مارس 2014. استخدم 29٪ آخرون Java 11 ، الذي تم إصداره في سبتمبر 2018. كلاهما إصدار LTS. خطط حوالي 37 ٪ من مستخدمي Java البالغ عددهم 876 مستخدمًا للانتقال إلى Java 17 LTS.  

هذه عينة صغيرة إلى حد ما من مطوري Java في جميع أنحاء العالم. تلاحظ Oracle أن شركة IDC للمحلل التقني تقدر أن هناك 10 ملايين من مطوري Java ، يمثلون حوالي 75٪ من المطورين بدوام كامل. تُصنف Java ضمن أفضل ثلاث لغات شيوعًا عبر فهارس متعددة ، جنبًا إلى جنب مع JavaScript / TypeScript و Python.

هناك Java لغة البرمجة ثم هناك العديد من منصات Java التي تستخدم Java apps تشغيل ، يتكون من Java Virtual Machine أو “JVM” وواجهات برمجة التطبيقات الخاصة به. النظامان الأساسيان هما Java Standard Edition (Java SE) و Java Enterprise Edition (Java EE). 

يشير Chander إلى أن "مشتركي Java SE يحصلون على حق الوصول إلى دعم Java SE من Oracle والميزات التجارية مثل GraalVM Enterprise و Java Management Service و Advanced Management Console" ، مما يوجه المستخدمين إلى مدونة شروط ترخيص Java SE الجديدة للحصول على تفاصيل حول الترخيص. 

بالنسبة للميزات التقنية الجديدة ، تتضمن Java 19 سبعة مقترحات لتحسين JDK (JEP) ، لكنها في الغالب ميزات معاينة أو حاضنة.

والجدير بالذكر أن Java 19 تتضمن JEP 422 - منفذ Linux / RISC-V، الذي ينقل JDK إلى بنية Linux RISC-V مفتوحة المصدر. حاز RISC-V على دعم إنتل في مختلف المقاييس من خلال أعمال خدمات المسبك الجديدة التابعة لها ووكالة ناسا ، التي تريد استخدام رقائق RISC-V لأجهزة الكمبيوتر الخاصة برحلات الفضاء من الجيل التالي.  

اخترع أساتذة جامعة كاليفورنيا بيركلي ديفيد باترسون وكريست أسانوفيتش معيار RISC-V (يُطلق عليه "خطر خمسة") منذ 12 عامًا. للمطورين الحرية في تغيير بنية مجموعة تعليمات شريحة RISC-V (ISA) مقابل ISAs المغلقة لمعالجات Intel x86 و Arm.  

إضافة أخرى مثيرة للاهتمام هي JEP 425 "الخيوط الافتراضية (معاينة)" لمنصة جافا. الخيوط الافتراضية هي أول JEP كجزء من مشروع لوم ، جهد متعدد السنوات لتحسين أداء Java على تطبيقات الخادم الكبيرة. 

"الخيوط الافتراضية هي خيوط خفيفة الوزن تقلل بشكل كبير من الجهد المبذول في كتابة التطبيقات المتزامنة عالية الإنتاجية وصيانتها ومراقبتها" ، لاحظ مؤلفي الاقتراح.

أيضا: كيفية تشغيل مواقع الويب بصيغة apps بكل سهولة في Linux

يشرح Chander فوائد الخيوط الافتراضية مقابل خيوط Java وكيف يهدف Project Loom إلى التوصل إلى بديل لثلاثة "خيارات سيئة" لدى مطوري البرامج ، وهو إهدار الأجهزة من خلال قلة الاستخدام ، وإهدار جهد المبرمج مع نماذج البرمجة الأسوأ وإمكانية الملاحظة ، أو ابتعد عن جافا.

"هناك الكثير من الأشياء الرائعة حول سلاسل عمليات Java. أنها توفر نموذج برمجة طبيعي ، مع رمز تسلسلي قابل للقراءة باستخدام مشغلي التحكم في التدفق التي يفهمها المستخدمون - الحلقات ، الشروط ، الاستثناءات. يحصل المستخدمون على إمكانية تصحيح أخطاء رائعة وإمكانية الخدمة وتتبعات مكدس قابلة للقراءة. والخيوط هي وحدات طبيعية لجدولة أنظمة التشغيل "، يشير تشاندر.

"المشكلة هي أن تنفيذ الخيوط بواسطة نظام التشغيل ثقيل للغاية. يستغرق الأمر وقتًا طويلاً لبدء مؤشر ترابط لكل اتصال ، ولكن الأسوأ من ذلك ، أن عدد الخيوط التي يمكن لنظام التشغيل دعمها في أي وقت يحد من عدد المعاملات المتزامنة التي يمكن للخادم معالجتها - إلى أقل بكثير من سعة الجهاز أو الشبكة - وهكذا تصبح سلاسل العمليات عاملاً مقيدًا شديدًا على إنتاجية الخادم ".

وقال إن العديد من الأشخاص يفترضون أن Oracle ستتبنى أسلوب البرمجة غير المتزامن الذي توفره ما يسمى أطر العمل "التفاعلية" ولكنه أضاف: "قد يكون رد الفعل هو أفضل ما يمكن للأشخاص فعله باستخدام JVM الحالي ، ولكن هدفنا هو القيام بعمل أفضل ، وهو ما يمكننا القيام به من خلال جعل الخيوط أخف وزنا وأكثر قابلية للتوسع ، مما يتيح للمطورين الاستمرار في استخدام النموذج والأدوات التي استخدموها بنجاح لسنوات ".

فيما يلي قائمة بجميع JEPs السبعة في Java 19: 

مصدر