جاوا ۱۲: معرفی ویژگی‌های جدید آخرین ورژن جاوا
1398/01/07 15:07 , میلاد صاحب نظر

جاوا ۱۲: معرفی ویژگی‌های جدید آخرین ورژن جاوا

جاوا ۱۲ منتشر شد و همراه با خودش چند زبان برنامه‌نویسی و ویژگی‌های جدید به همراه آورد که باید مسلما باعث بهبود عملکرد برنامه شوند.

اگرچه ممکن است هنوز توسعه‌دهندگان زیادی از جاوا ۸ استفاده کنند، اما آخرین ورژن این زبان پیشرفت‌های قابل توجه و چشمگیری را ارائه کرده که نمی‌توان به راحتی از آن‌ها گذشت.

برخی از بزرگ‌ترین ویژگی‌های جاوا ۱۲ را در ادامه معرفی می‌کنیم.

بازیافت حافظه یا garbage collector به نام Shenandoah

Garbage collection فرآیندی است که زبان برنامه‌نویسی به واسطه آن حافظه‌ای که دیگر توسط برنامه مورد نیاز نیست را آزاد می‌کند.

این فرآیند در حین شناسایی حافظه و آزادسازی آن، اپلیکیشن را متوقف می‌کند و در موارد خطرناک، یا جایی که کاربر در حال تعامل با برنامه است، این توقف‌ها برای کاربر محسوس خواهند بود.

جاوا ۱۲ Shenandoah را معرفی می‌کند، که این ویژگی به این شکل توصیف شده است: "یک Garbage collector با زمان توقف کوتاه که با انجام وظیفه رهاسازی حافظه هم‌زمان با اجرای برنامه جاوا، زمان توقف برنامه را به شدت کاهش می‌دهد".

به خاطر انجام هم‌زمان رها سازی حافظه، زمان‌های توقف دیگر رابطه مستقیم با میزان حافظه کنار گذاشته شده برای یک برنامه در رانتایم ندارد(یعنی همان نسبت که در حافظه با نام پشته شناخته می‌شود).

با توجه به مستندات OpenJDK: "رهاسازی حافظه یک پشته ۲۰۰ گیگابایتی یا یک پشته ۲ گیگابایتی باید زمان توقف یکسان و قابل پیش‌بینی داشته باشند".

پیشرفت در garbage collector‌ قبلی یعنی G1

در جاوا می‌توانید garbage collector مورد نظر خود را انتخاب کنید و جاوا ۱۲ پیشرفت‌هایی در G1 ایجاد کرده است.

هدف "کالکشن‌های ترکیبی قابل حذف" برای G1 کاهش نمونه‌ها و زمان‌هایی است که GC اپلیکیشن را برای مدت زمانی بیش از مدت زمان مورد نظر متوقف می‌کند. این توقف به خاطر کار کردن برنامه روی یک بخش بیش از حد بزرگ از حافظه اتفاق می‌افتد.

به روز رسانی انجام شده روی این بخش قابلیتی فراهم می‌کند که به موجب آن بخش‌های کم اهمیت‌تر فرآیند GC به تدریج انجام می‌شوند، در واقع این بخش‌های کم اهمیت به عنوان مراحلی در فرآیند در نظر گرفته می‌شوند که در صورت کمبود وقت قابل حذف شدن هستند.

ویژگی "بازگشت حافظه اختصاص داده شده بی استفاده" طراحی شده است تا به فرآیند GC در G1 اجازه دهد وقتی بخشی از حافظه توسط اپلیکیشن مورد استفاده قرار نمی‌گیرد، آن بخش‌ها به سیستم عامل بازگردانده شوند.

GC با بررسی دوره‌ای در مورد اینکه چه مقدار از کل حافظه پشته جاوا توسط برنامه در حال استفاده است و بازگرداندن خودکار مقادیر بی استفاده از پشته به سیستم عامل، این امر را انجام می‌دهد.

با توجه به خبرهای رسیده در مورد این ویژگی‌های جدید، این تغییرات باید در اجرای جاوا به توسعه‌دهندگان کمک کرده و نحوه پرداخت هزینه برای G1 GC به صورت پرداخت به ازای میزان استفاده انجام شود.

قبلا G1 GC میزان زیادی از حافظه را بدون استفاده برای برنامه‌های جاوا اشغال می‌کرد و توسعه‌دهندگان مجبور بودند پول این فضاهای بدون استفاده حافظه را نیز بپردازند.

عبارات switch

عبارات switch به توسعه‌دهندگان اجازه می‌دهند تا از syntax ساده‌تری در این عبارات استفاده کنند و خیلی راحت‌تر بتوانند پاسخ‌های مختلف را بر اساس ورودی به دست آورند.

برای مثال، به جای اینکه از syntax زیر برای هر case درون عبارت switch استفاده کنند:

در عوض می‌توانند هر case را به شکل زیر و با میزان کد کمتری نمایش دهند:

در جاوا ۱۲، عبارات Switch به عنوان یک ویژگی پیش‌نمایش در دسترس هستند.

منبع: techrepublic

 مطالب مرتبط

 همه چیز در مورد جاوا اسکریپت
جاوا در برابر جاوا اسکریپت: هر آنچه باید بدانید
دلایلی که نشان می‌دهد جاوا هنوز شماره ۱ است!
چرا زبان برنامه‌نویسی جاوا اسکریپت، بهترین زبان برنامه‌نویسی برای پیشرفت در آینده است؟
کار با اشیاء در جاوا
برنامه نویسی شیءگرا چیست؟

از آخرین دوره های آموزشی و تخفیف ها مطلع شوید

با تکمیل فرم زیر ، از اخبار و اطلاعات به روز برنامه نویسی و تکنولوژی عقب نمانید

آخرین مطالب

آموزش جامع SQL Server (جلسه ۱۲)
آموزش جامع SQL Server (جلسه ۱۲)

دستور UPDATE در SQL Server برای تغییر داده‌های موجود در یک جدول، از دستور UPDATE به شکل زیر استفاده ...

آموزش جامع SQL Server (جلسه ۱۵)
آموزش جامع SQL Server (جلسه ۱۵)

دستور DROP TABLE در SQL Server گاهی، لازم است یک جدول که دیگر استفاده‌ای ندارد را حذف کنید. برای ...

آموزش جامع SQL Server (جلسه ۳۵: Window Functionها – بخش ۲)
آموزش جامع SQL Server (جلسه ۳۵: Window Functionها – بخش ۲)

بخش اول از آخرین مبحث دوره جامع آموزش SQL Server در جلسه قبلی بررسی شد. این مبحث که ...

آخرین دیدگاه ها

دیدگاه خود را درباره این پست بنویسید

فرم ارسال نظرات