Java 10: Fitur Utama dan Model Rilis Dijelaskan
Java 10 adalah rilis utama dalam siklus rilis Java dan dirilis pada 10 Maret 2018. Dengan Java 10, Oracle telah mengubah siklus rilis Java ke model baru, siklus rilis 6 bulan dan model LTS untuk produk Oracle Java SE. Model LTS adalah singkatan dari Long Term Support model.
Dari Java 10 ke depan, Oracle merilis versi baru Java setelah setiap 6 bulan di mana setiap versi berisi satu atau dua fitur utama. Oracle menggunakan konsep release train. Setiap release train dijadwalkan untuk 6 bulan. Fitur yang dikembangkan dalam timeline ini akan dikirim dalam rilis, sebaliknya fitur dipindahkan ke release train berikutnya.
Oracle JDK vs OpenJDK
Sebagian besar biner Oracle JDK adalah properti dan dilisensikan oleh Oracle dan memiliki beberapa batasan pada redistribusi. Sementara itu OpenJDK lebih ramah bagi komunitas pengembang. Dari Java 10 ke depan, Oracle telah memutuskan untuk mempromosikan OpenJDK sebagai JDK utama untuk memfasilitasi pengembangan berbasis komunitas Java. Oracle akan terus menghasilkan JDK sendiri tetapi akan merilisnya setelah 3 tahun dan menyebutnya sebagai versi LTS. Jadi biner OpenJDK akan dirilis setelah setiap enam bulan.
OpenJDK ramah cloud dan container karena dapat didistribusikan secara bebas sebagai bagian dari container. Langkah Oracle untuk mempromosikan OpenJDK membuat Java lebih ramah terhadap pengembangan dan penerapan cloud atau container.
Java 9 dan Java 10 adalah rilis non-LTS. Rilis Java 11 adalah rilis LTS.
Fitur Baru
Berikut adalah fitur baru utama yang diperkenalkan dalam Java 10.
JEP 286 − Local Variable Type Inference
JEP 322 − Time-Based Release Versioning
JEP 304 − Garbage-Collector Interface
JEP 307 − Parallel Full GC for G1
JEP 316 − Heap Allocation on Alternative Memory Devices
JEP 296 − Consolidate the JDK Forest into a Single Repository
JEP 310 − Application Class-Data Sharing
JEP 314 − Additional Unicode Language-Tag Extensions
JEP 319 − Root Certificates
JEP 317 − Experimental Java-Based JIT Compiler
JEP 312 − Thread-Local Handshakes
JEP 313 − Remove the Native-Header Generation Tool
Java 10 meningkatkan 70+ API dengan metode dan opsi baru serta menghapus API dan opsi yang digunakan tidak lagi. Kita akan melihat perubahan ini dalam bab-bab berikutnya.