
Hari ini versi baru Java dirilis - Java / JDK 13. Perlombaan dimulai dengan rilis musim semi JDK 12, yang diadakan pada 19 Maret, dan percabangan dari cabang utama terjadi pada 13 Juni. Seseorang yang hilang di jalan seperti JEP 343: Alat Pengemasan , tetapi secara umum, semuanya normal, dan inilah saatnya untuk menuai manfaatnya.
Anda dapat mengunduh rilis baru di sini . Di bawah potongan akan menjadi gambaran kecil dari JEP segar yang termasuk dalam rilis ini.
Seperti yang Anda ketahui, di JDK 11 kami memiliki GC baru yang brilian - ZGC, dapat diskalakan, cepat, dan jeda rendah. Ya, atau setidaknya itulah idenya. Masalah yang agak serius dalam dirinya adalah bahwa ia berperilaku seperti anjing di palungan dan tidak meninggalkan ingatan yang sibuk, bahkan jika itu tidak diperlukan. Shenandoah dan G1 mulai berbagi sejak lama, dan perilaku ZGC tampak berjabat tangan secara kriminal. Nah, sekarang semuanya sudah diperbaiki, tepat setelah batas waktu di -XX:ZUncommitDelay
kita mendapatkan byte kita kembali.
Fitur CDS sendiri memungkinkan Anda untuk menambahkan kelas yang dapat dimuat ke arsip umum, sehingga mempercepat startup dan mengurangi jumlah RAM yang terbuang. Sayangnya, sebelum itu entah bagaimana agak bodoh bahwa Anda sendiri harus me-restart aplikasi berkali-kali, membentuk daftar kelas-kelas seperti itu, dan kemudian juga membuang tangan Anda pada daftar ini. Sekarang robot berfungsi, bukan manusia: ketika opsi -XX:ArchiveClassesAtExit
, kelas secara otomatis dibuang ke dalam arsip setelah penutupan aplikasi normal.

Stuart Marks - Dokter Deprecator, Anggota Konsultasi Staf Teknis di Oracle + olegchir di Oracle Code One, beberapa menit setelah pengumuman Java 13
Dalam semua (sekarang usang) javas, net.Socket
dan java.net.ServerSocket
didasarkan pada campuran neraka Jawa dan kode-C, dari mana bahkan ahli teori kinerja yang paling berpengalaman pun menangis. Masalahnya diselesaikan dengan menulis implementasi baru menggunakan infrastruktur internal yang sama dengan NIO, sehingga hampir tidak memerlukan kode asli sendiri. Namun, ini bukan warisan, mereka menulis semuanya dengan indah dan cocok untuk pindah ke serat dari proyek Loom. Jika menarik di bawah tenda, maka Anda perlu melihat kelas NioSocketImpl
.
Kami terus mempersiapkan kedatangan pencocokan pola. Ganti Ekspresi adalah fitur pertama yang memungkinkan Anda menulis kode formulir:
int j = switch (day) { case MONDAY -> 0; case TUESDAY -> 1; default -> { int k = day.toString().length(); int result = f(k); yield result; } };
Seperti yang kita lihat dalam contoh, karena JDK 12 kita memiliki satu perubahan kosmetik: break
diubah untuk yield
, sekarang semuanya seperti semua orang normal.
JEP 326: Literal Raw String pergi di bawah pisau, tetapi bisnisnya hidup! "Beritahu kawan Stalin - kesalahan besar telah terjadi . " Blok teks adalah fitur pratinjau baru yang memungkinkan Anda melakukannya tanpa melarikan diri, memformat garis dengan cara yang mudah, menyeduh kopi dengan busa dan secara ajaib memberi kontrol atas format string yang dihasilkan.
Lebih biasa lagi, sekarang setiap algojo tanpa perlu belajar JSP dapat menulis sesuatu seperti:
String html = """ <html> <body> <p>Hello, world</p> </body> </html> """;
DBA pemula akan dapat membangun karier dengan memulai dengan kode berikut:
String query = """ SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB` WHERE `CITY` = 'NEW DEHLI' ORDER BY `EMP_ID`, `LAST_NAME`; """;

Kedengarannya agak mengancam
Peringatan
Gambaran umum JEP adalah bagian kecil dari apa yang Anda bisa dan harus Anda ceritakan tentang Java baru. Tinjauan lengkap ini juga harus mencakup tinjauan komprehensif tentang inovasi taktis yang menarik dan tinjauan umum bug di bugtracker. Mungkin seseorang ( lany , ay!) Akan dapat melanjutkan pekerjaan ini. Saya dan tim saya sekarang berada di Oracle Code One - sayangnya, duduk di atas laporan atau bersandar pada stan Liberica JDK - cukup sulit untuk menulis sesuatu begitu lama. Bagaimanapun, ini adalah topik untuk situs hub yang sama sekali berbeda.

Brian Goetz - Arsitek Bahasa Jawa di Oracle + olegchir di Oracle Code One
Dan kami juga memiliki konferensi Joker di mana Anda dapat mendiskusikan kebutuhan untuk beralih ke Java 13, waktu transisi ke ZGC, jumlah persediaan popcorn yang diperlukan setelah pengenalan Blok Teks dan masalah terkait lainnya. Tiket, seperti biasa, dapat dibeli di situs web resmi .