مقدمة
دورة الأشهر الستة، وإصدارات الدعم طويل الأمد، والاستدلال على النوع المحلي.
ما الذي اكتسبته Java منذ الإصدار 8
تفتح مستودعًا حديثًا فلا تجد الشيفرة شبيهة بما كنت تكتبه. صنف كامل يتألف من سطر واحد، بلا حقول ولا دوال وصول ظاهرة. تعليمة switch تُرجع قيمة بدلًا من إسنادها إلى متغير، ولا يوجد فيها أي break. تصريح يبدأ بـ var دون أن يظهر النوع في أي مكان. سلسلة SQL تمتد على اثني عشر سطرًا دون عملية ضم واحدة. لا شيء من هذا مكتبة خارجية: إنها Java القياسية، وصلت بين الإصدارين 9 و21، بينما بقي تطبيقك على الإصدار 8.
المشكلة العملية ليست جمالية، بل مالية وتشغيلية. لم تعد معظم التوزيعات تُصدر تصحيحات مجانية لـ Java 8؛ وصورة Docker الخاصة بك تضمّ آلة افتراضية صارت تصحيحاتها الأمنية إما مدفوعة وإما غير موجودة. والمكتبات التي تستخدمها تنشر إصدارات رئيسية تشترط Java 17 كحد أدنى: Spring Boot 3 وHibernate 6 وبرامج تشغيل قواعد البيانات الحديثة. كل شهر يمرّ على الإصدار 8 يزيد كلفة الترحيل، لأنك تتأخر على ثلاث جبهات في وقت واحد: المنصة، والاعتماديات، وعادات الكتابة لدى فريقك.
إيقاع الأشهر الستة، ولماذا لا يعنيك إلا جزئيًا
منذ Java 9 يصدر إصدار جديد كل ستة أشهر، في مارس وسبتمبر. وقد فقد الترقيم أي دلالة: Java 14 ليس إعادة تصميم، بل هو حصيلة ستة أشهر من العمل. والنتيجة المهمة تكمن في موضع آخر: معظم هذه الإصدارات لا يُدعم إلا ستة أشهر، حتى صدور الإصدار التالي. وهي غير مخصصة للإنتاج.
التعليقات
التعليقات مدعومة عبر GitHub Discussions
سجّل الدخول باستخدام GitHub للمشاركة في النقاش