از زمانی که Sun Microsystems جاوا را در سال ۲۰۰۶ متنباز کرد، نوآوری از جامعه توسعهدهندگان وفادار و خلاق آن جریان یافته است. اوراکل، نگهدارنده شرکتی فعلی جاوا، سنتی را که در سال ۲۰۱۰ با خرید Sun به ارث برده بود، با انتشار Java 24 (Oracle JDK 24) در رویداد JavaOne 2025 در اوایل این ماه، حفظ کرده است.
آخرین نسخه این زبان برنامهنویسی و پلتفرم توسعه پرکاربرد، شامل پیشرفتهای چشمگیری با هدف بهرهوری توسعهدهندگان و بهبود قابلیتهای برنامههای کاربردی در سطح سازمانی است. JDK 24 شامل ارتقایی است که ویژگیهای زبان، کتابخانهها، امنیت، ابزارها و عملکرد را در بر میگیرد - تقریباً همه چیزهای مهم در این پلتفرم.
به گفته آرنال دایاراتنا، تحلیلگر IDC، جاوا با پاسخگویی به نیازهای توسعهدهندگان، بهویژه در حوزه برنامههای کاربردی مبتنی بر هوش مصنوعی، به تکامل خود ادامه میدهد و ارزشمند باقی میماند. ژرژ ساب، معاون ارشد اوراکل، به ماهیت فراگیر Java 24 اشاره کرد که بیش از ۲۰ ویژگی جدید، از جمله پشتیبانی از هوش مصنوعی و رمزنگاری پساکوانتومی را در بر میگیرد. این انتشار، تعهد اوراکل به یک چرخه انتشار شش ماهه قابل پیشبینی را تقویت میکند.
چندین مورد مرتبط با کوانتوم در زیر فهرست شدهاند. مهمترین ارتقای مرتبط با هوش مصنوعی JEP 489 (Vector API) است که محاسبات برداری را - که برای استنتاج هوش مصنوعی و وظایف محاسباتی سنگین حیاتی است - تسریع میکند. بدون شک، این مورد توسط توسعهدهندگان هوش مصنوعی بسیار مورد استفاده قرار خواهد گرفت.
در اینجا، طبق مشخصات اوراکل، جزئیات بهبودهای JDK24 آمده است:
تقویت امنیت
جاوا ۲۴ امنیت را، بهویژه در مواجهه با تهدیدات نوظهور رایانش کوانتومی، در اولویت قرار میدهد.
- JEP 478 (Key Derivation Function API) امنیت رمزنگاری دادهها در حین انتقال را بهبود میبخشد.
- JEP 496 (سازوکار کپسولهسازی کلید مبتنی بر شبکههای پیمانهای مقاوم به کوانتوم) و JEP 497 (الگوریتم امضای دیجیتال مبتنی بر شبکههای پیمانهای مقاوم به کوانتوم) پیادهسازیهایی از سازوکارهای مقاوم به کوانتوم را فراهم میکنند، گامی مهم به سوی پشتیبانی از رمزنگاری پساکوانتومی. این ویژگیها نیاز به ارتباطات امن و احراز هویت دادهها در دنیای پساکوانتومی را برطرف میکنند.
بهروزرسانیهای زبان
ویژگیهای کلیدی زبان با هدف بهینهسازی توسعه و بهبود قابلیت اطمینان کد عبارتند از:
- JEP 488 (انواع اولیه در الگوها، instanceof و switch) با گسترش تطبیق الگو به انواع اولیه، یکنواختی و بیانگری بیشتری را فراهم میکند که به نفع برنامههای استنتاج هوش مصنوعی است.
- JEP 492 (بدنههای سازنده انعطافپذیر) با معرفی فازهای مقدمه و موخره متمایز در بدنههای سازنده، قابلیت اطمینان کد را افزایش میدهد و جایگذاری منطق را ساده میکند.
- JEP 494 (اعلانهای وارد کردن ماژول) استفاده مجدد از کتابخانههای ماژولار را ساده میکند، که بهویژه برای مبتدیان و توسعهدهندگانی که منطق هوش مصنوعی را ادغام میکنند، مفید است.
- JEP 495 (فایلهای منبع ساده و متدهای اصلی نمونه) یک منحنی یادگیری هموار را برای برنامهنویسان جدید ارائه میدهد و به توسعهدهندگان باتجربه اجازه میدهد برنامههای کوچک و مختصر بنویسند.
افزودههای کتابخانه
چندین بهبود قابل توجه در کتابخانه:
- JEP 485 (گردآورندههای استریم - Stream Gatherers) Stream API را بهبود میبخشد و امکان عملیات میانی سفارشی و تبدیل داده کارآمدتر را فراهم میکند.
- JEP 484 (Class-File API) یک API استاندارد برای تجزیه، تولید و تبدیل فایلهای کلاس جاوا ارائه میدهد.
- JEP 487 (مقادیر محدودهبندی شده - Scoped Values) اشتراکگذاری دادههای تغییرناپذیر بین ریسهها (threads) را بهبود میبخشد و عملکرد و استحکام را افزایش میدهد.
- JEP 489 (Vector API) محاسبات برداری را تسریع میکند که برای استنتاج هوش مصنوعی و وظایف محاسباتی سنگین حیاتی است.
- JEP 499 (همزمانی ساختاریافته - Structured Concurrency) برنامهنویسی چند ریسهای را ساده میکند و قابلیت نگهداری و اطمینان را بهبود میبخشد.
ابزارها، بهینهسازیهای عملکرد
- JEP 493 (پیوند دادن تصاویر زمان اجرا بدون JMOD) امکان ایجاد تصاویر زمان اجرای سفارشی بدون فایلهای JMOD را فراهم میکند و اندازه JDK را کاهش میدهد.
- JEP 450 (هدرهای فشرده شیء) اندازه هدرهای شیء را در HotSpot JVM کاهش میدهد و اندازه هیپ (heap) و عملکرد را بهبود میبخشد.
- JEP 475 (گسترش Late Barrier برای G1) زبالهروب (garbage collector) G1 را بهینه میکند و کارایی و کیفیت کد را بهبود میبخشد.
- JEP 490 (دستدهیهای محلی ریسه - Thread-Local Handshakes) دستدهیهای محلی ریسه را بهینه میکند و عملکرد را برای برنامههایی با تعداد زیادی ریسه افزایش میدهد.
- JEP 491 (بررسیهای گمانهزنانه در JVMCI) بررسیهای گمانهزنانه را در رابط کامپایلر JVM (JVMCI) معرفی میکند و زمینه را برای بهبودهای عملکردی آینده فراهم میسازد.
ویژگیهای منسوخشده/حذفشده
- JEP 483 (منسوخ کردن پورت ویندوز 32 بیتی x86 برای حذف) پورت x86 ۳۲ بیتی برای ویندوز را برای حذف در آینده علامتگذاری میکند و مهاجرت به سیستمهای ۶۴ بیتی را تشویق میکند.
- JEP 498 (حذف متدهای منسوخشده Applet API) متدهای قدیمی Applet API را حذف میکند و با استانداردهای وب مدرن و شیوههای امنیتی هماهنگ میشود.
اوراکل اعلام کرد که JDK 24 تعهد خود را به تطبیق جاوا برای پاسخگویی به نیازهای در حال تحول توسعه برنامههای کاربردی مدرن، با تمرکز بر بهرهوری توسعهدهندگان، امنیت و عملکرد، منعکس میکند. بهبودهای جاوا ۲۴ این پلتفرم را برای ادامه ارتباط در زمینههایی مانند هوش مصنوعی، برنامههای کاربردی ابری بومی و پارادایمهای محاسباتی آینده، از جمله رایانش کوانتومی، آماده میکند.