Java 9 - Fitur Baru: Panduan Komprehensif untuk Pemula

Hai, para pengembang Java yang sedang berkembang! Saya sangat senang menjadi panduan Anda dalam perjalanan menarik ini melalui fitur baru Java 9. Sebagai seseorang yang telah mengajar Java selama tahun-tahun, saya bisa menjamin Anda bahwa versi ini membawa beberapa peningkatan yang memengaruhi permainan. Jadi, mari kita masuk dan eksplorasi fitur-fitur ini bersama!

Java 9 - New Features

Pengenalan ke Java 9

Sebelum kita masuk ke fitur baru, mari kitaambil sedikit waktu untuk memahami apa itu Java 9. Diperkenalkan pada September 2017, Java 9 memperkenalkan beberapa peningkatan yang membuat pengodingan menjadi lebih efisien dan menyenangkan. Itu seperti mendapat sebuah kotak peralatan baru yang berisi beberapa gadget menarik yang Anda tidak tahu Anda butuhkan!

Sistem Modul

Salah satu penambahan terpenting di Java 9 adalah Sistem Modul, juga dikenal sebagai Proyek Jigsaw. Saya tahu apa yang Anda pikirkan - "Modul? Itu terdengar sulit!" Tetapi jangan khawatir, itu sebenarnya adalah cara yang bagus untuk mengorganisir kode Anda.

Apa Itu Modul?

Pikirkan modul sebagai wadah untuk kode Anda. Itu seperti memiliki lemari yang rapi dimana semua hal memiliki tempatnya. Setiap modul memiliki:

  1. Sebuah nama
  2. Sebuah set paket
  3. Daftar apa yang dibutuhkan (dependensi)
  4. Daftar apa yang ditawarkan ke modul lain

mari kita lihat contoh sederhana:

module com.myapp {
requires java.sql;
exports com.myapp.api;
}

Dalam contoh ini, kita sedang membuat modul bernama com.myapp. Itu membutuhkan modul java.sql (karena itu membutuhkan beberapa fungsi basis data) dan mengekspor paket com.myapp.api (membuatnya tersedia untuk modul lain untuk digunakan).

REPL (Read-Eval-Print Loop)

Java 9 memperkenalkan JShell, sebuah alat REPL. Anda mungkin berpikir, "REPL itu apa?" Well, imagine Anda bisa berbicara dengan Java di mana Anda dapat mengetikkan kode kecil dan mendapatkan tanggapan segera. Itu adalah REPL!

Untuk memulai JShell, cukup ketik jshell di command prompt Anda. mari kita coba contoh sederhana:

jshell> System.out.println("Halo, Java 9!")
Halo, Java 9!

Apakah itu keren? Anda baru saja menjalankan kode Java tanpa membuat program penuh! Itu sempurna untuk menguji ide-ide atau belajar konsep baru.

Peningkatan JavaDocs

Dokumentasi mungkin tidak terdengar menarik, tetapi percayalah, dokumentasi yang bagus adalah teman terbaik seorang pengembang. Java 9 membuat JavaDocs menjadi lebih baik dengan penambahan fungsi pencarian dan dukungan HTML5.

Metode Pabrik Koleksi

Membuat koleksi di Java menjadi lebih mudah! Java 9 memperkenalkan metode pabrik baru untuk koleksi. mari kita lihat bagaimana kita membuat daftar tak dapat diubah:

List<String> buah = List.of("Apel", "Banana", "Ceri");
System.out.println(buah);

Output:

[Apel, Banana, Ceri]

Apakah itu lebih rapi daripada cara lama? Tidak lagi perlu membuat ArrayList dan menambahkan elemen satu per satu!

Metode Private di Interface

Java 9 mengijinkan Anda memiliki metode private di interface. Ini mungkin terdengar abstrak, jadi mari kita lihat contoh:

public interface MyInterface {
private static void privateMethod() {
System.out.println("Ini adalah metode private");
}

default void publicMethod() {
privateMethod();
System.out.println("Ini adalah metode publik");
}
}

Dalam contoh ini, privateMethod() hanya dapat digunakan dalam interface. Itu seperti memiliki asisten rahasia yang hanya interface itu sendiri yang tahu!

Peningkatan API Stream

API Stream, yang diperkenalkan di Java 8, menjadi lebih baik di Java 9. Salah satu penambahan menarik adalah metode takeWhile(). mari kita lihatnya dalam aksi:

List<Integer> angka = List.of(2, 4, 6, 8, 9, 10, 12);
List<Integer> angkaGenap = angka.stream()
.takeWhile(n -> n % 2 == 0)
.collect(Collectors.toList());
System.out.println(angkaGenap);

Output:

[2, 4, 6, 8]

Kode ini mengambil angka dari daftar saat mereka genap. Sebagai soon as it hits an odd number (9), it stops. Sangat keren, kan?

Peningkatan Try-With-Resources

Java 7 memperkenalkan try-with-resources, dan Java 9 membuatnya menjadi lebih baik. Sekarang, Anda dapat menggunakan variabel final atau secara efektif final dalam pernyataan try-with-resources. mari kita lihat contoh:

BufferedReader reader = new BufferedReader(new FileReader("file.txt"));
try (reader) {
// Gunakan reader
} catch (IOException e) {
e.printStackTrace();
}

Ini membuat kode Anda lebih rapi dan mudah dibaca. Itu seperti membersihkan kamar Anda - segala sesuatu hanya tampak lebih baik!

Kesimpulan

Kami baru saja menggesek permukaan dari apa yang dapat ditawarkan Java 9. Ada banyak fitur lain seperti peningkatan API Proses, skema versi baru, dan klien HTTP/2. Sepanjang Anda terus mengembangkan perjalanan Java Anda, Anda akan menemukan bagaimana fitur-fitur ini membuat hidup Anda sebagai pengembang menjadi lebih mudah dan menyenangkan.

Ingat, cara terbaik untuk belajar adalah dengan melakukan. Buat IDE Anda hidup, mulai JShell, dan eksperimen dengan fitur baru ini. Jangan takut untuk membuat kesalahan - itu adalah bagaimana kita belajar dan tumbuh sebagai pengembang.

Selamat coding, para ahli Java masa depan! ??‍??‍?

Credits: Image by storyset