Apa Itu Java?

Sejarah singkat Java sejak 1995 dan ranah pemakaiannya dari backend enterprise sampai Android dan big data.

Daftar isi

Java adalah bahasa pemrograman yang dirancang agar program yang sama dapat dijalankan di sistem operasi mana pun tanpa perubahan kode. Bahasa ini lahir pada 1995 dan kini menjadi tulang punggung banyak sistem besar, dari aplikasi perbankan sampai infrastruktur big data. Topik ini menelusuri sejarah singkatnya, memperkenalkan bentuk kode khasnya, dan memetakan ranah pemakaiannya. Setelah membacanya, istilah seperti JDK dan versi LTS yang muncul saat mengunduh Java akan terasa jelas.

Sejarah singkat Java#

Java mulai dikembangkan pada 1991 di Sun Microsystems oleh tim yang dipimpin James Gosling. Proyek ini awalnya menyasar perangkat pintar seperti televisi interaktif dan set-top box, dengan nama sementara Oak. Pasar yang dituju belum berkembang, sedangkan web justru tumbuh pesat pada awal 1990-an. Tim lalu memutar arah ke pemrograman internet, mengganti nama menjadi Java, dan meluncurkannya pada 1995. Versi resmi pertamanya, JDK 1.0, dirilis pada Januari 1996.

Daya tarik utamanya pada masa itu adalah janji write once, run anywhere, yakni program cukup ditulis satu kali dan dapat berjalan di komputer apa pun. Banyak halaman web pada era 1990-an menghidupkan animasinya lewat applet Java di browser. Seiring aplikasi web mengambil alih peran applet, Java menemukan pijakan yang jauh lebih besar di sisi server melalui Java EE, platform untuk aplikasi perusahaan yang kini bernama Jakarta EE.

Sun Microsystems sendiri diakuisisi Oracle, dan transaksinya dituntaskan pada Januari 2010. Pengelolaan Java berpindah ke Oracle, sedangkan implementasi referensinya tetap terbuka melalui proyek OpenJDK. Banyak perusahaan lain juga menyediakan versi OpenJDK sendiri, sehingga ekosistem Java tidak bergantung pada satu penyedia.

Versi dan rilis LTS#

Nomor versi Java terus naik sejak JDK 1.0, tetapi pola rilisnya baru stabil belakangan. Sejak Java 9 pada 2017, versi baru keluar setiap enam bulan secara terjadwal. Pola ini membuat fitur baru sampai ke pengguna lebih cepat, tetapi versi non-LTS cepat kedaluwarsa karena dukungan komunitasnya umumnya berhenti pada rilis berikutnya. Karena itulah ada versi LTS, singkatan dari long-term support, yang didukung bertahun-tahun dan menjadi pilihan aman untuk belajar maupun produksi.

Java 8, 11, 17, dan 21 adalah versi LTS yang paling banyak dipakai, dan Java 25 meneruskan pola tersebut sebagai LTS berikutnya pada 2025. Jalur ini memakai JDK 21 sebagai acuan, meskipun hampir semua contohnya juga berjalan pada versi yang lebih baru.

1995Java 1.0diluncurkan Sun2004Java 5generics2014Java 8 (LTS)lambda2017Java 9rilis tiap 6 bulan2021Java 17 (LTS)sealed class2023Java 21 (LTS)virtual thread
Lini waktu versi Java yang penting dari 1995 sampai 2023
VersiTahunFitur yang menonjol
Java 82014lambda dan Stream API
Java 112018mode satu file sumber
Java 172021sealed class
Java 212023virtual thread

Bentuk kode Java#

Java adalah bahasa bertipe statis dan berorientasi objek. Bertipe statis berarti tipe setiap variabel dideklarasikan secara eksplisit dan diperiksa compiler sebelum program berjalan, sehingga banyak kesalahan tertangkap lebih awal. Berorientasi objek berarti kode disusun ke dalam kelas, dan tidak ada program Java yang ditulis di luar kelas. Konsekuensinya, kode Java terlihat lebih panjang daripada bahasa skrip untuk tugas yang sama.

Program kecil berikut memperlihatkan bentuk dasarnya. Simpan isinya sebagai ContohBentuk.java, lalu jalankan dengan perintah java ContohBentuk.java pada terminal.

java ContohBentuk.java
public class ContohBentuk {

    static int tambah(int a, int b) {
        return a + b;
    }

    public static void main(String[] args) {
        int hasil = tambah(12, 30);
        System.out.println("12 + 30 = " + hasil);
    }
}
text Keluaran
12 + 30 = 42

Program di atas mendefinisikan kelas bernama ContohBentuk. Metode (method) main adalah titik masuk yang dicari JVM, yaitu Java Virtual Machine yang mengeksekusi program Java, sedangkan metode tambah adalah fungsi kecil yang menjumlahkan dua bilangan. Tipe data ditulis sebelum nama variabel, misalnya int untuk bilangan bulat dan String untuk teks. Perintah System.out.println menampilkan satu baris teks ke terminal.

Bentuk verbose seperti ini adalah pilihan desain, bukan keterbatasan. Panjangnya membuat struktur program tetap terbaca bertahun-tahun kemudian, dan compiler dapat memeriksa banyak hal sebelum program sempat berjalan. Untuk program yang dirawat tim besar selama puluhan tahun, sifat ini menjadi salah satu nilai utama Java.

Di mana Java dipakai#

Ranah pemakaian Java saat ini jauh melampaui browser tempat Java dulu dikenal. Porsi terbesarnya berada di sistem server yang menuntut kestabilan jangka panjang. Tabel berikut merangkum ranah utamanya beserta contoh konkret.

RanahContoh pemakaiannya
Backend enterpriseaplikasi perbankan, sistem tiket, dan layanan internal perusahaan, umumnya di atas framework seperti Spring atau Jakarta EE
Aplikasi Androidbanyak aplikasi Android yang ditulis dengan bahasa Java, sebelum Kotlin ikut populer
Big data dan streamingHadoop, Kafka, dan Elasticsearch ditulis dengan Java atau berjalan di atas JVM
Alat pengembangIDE seperti IntelliJ IDEA dan Eclipse, ditambah banyak alat build dan server aplikasi
Sistem tertanam dan kartuJava Card yang berjalan pada kartu pintar dan SIM card

Dua sifat membuat Java dipercaya untuk sistem yang menangani uang dan transaksi besar. Pertama, kompatibilitas mundurnya kuat, sehingga program lama umumnya masih berjalan di JVM modern tanpa penulisan ulang. Kedua, ekosistem library dan alatnya matang, sehingga masalah yang umum biasanya sudah punya solusi yang teruji. Pada baris alat pengembang, IDE adalah singkatan dari integrated development environment, yaitu aplikasi terpadu untuk menulis, menjalankan, dan men-debug kode.

Ranah Android sedikit berbeda. Aplikasinya ditulis dengan bahasa Java, tetapi runtime di perangkatnya bernama ART dan bukan JVM biasa. Bagi pengembang aplikasi, perbedaan ini nyaris tak terasa karena alat dan sintaks yang dipakai tetap Java.

Ranah big data memanfaatkan sisi lain, yaitu kecepatan JVM setelah program menghangat. Framework seperti Hadoop dan Kafka ditulis dengan Java atau bahasa lain yang berjalan di atas JVM, sehingga memproses jutaan data per detik bukan kejadian langka di ekosistem ini.

Kesalahan umum#

Mengira Java dan JavaScript adalah bahasa yang sama. Kedua nama memang mirip karena alasan pemasaran pada 1995, ketika Netscape mengganti nama bahasa skripnya menjadi JavaScript untuk menumpang popularitas Java. Kenyataannya keduanya berbeda dalam aturan tipe, runtime, dan tujuan pemakaiannya. Persamaannya hanya pola sintaks yang mengikuti keluarga bahasa C. Cara cepat membedakannya, kode JavaScript ditulis untuk browser atau Node.js, sedangkan Java dijalankan di atas JVM.

Menilai Java dari sisa kenangan applet. Applet di browser sudah lama mati karena semua browser besar menghapus dukungan plugin pada rentang 2015 sampai 2017. Menyimpulkan bahwa Java usang dari fakta itu adalah keliru, sebab sejak peralihan tersebut Java justru tumbuh di sisi server, Android, dan big data. Cara Java dijalankan hari ini adalah lewat JVM di server atau perangkat, bukan lewat plugin browser.

Menunda mulai karena merasa harus hafal seluruh istilahnya. Perbincangan Java memang padat istilah, mulai dari JDK, JVM, OpenJDK, sampai LTS, sehingga terkesan harus dipelajari semua lebih dulu. Kebutuhan nyata untuk mulai jauh lebih kecil, cukup satu JDK versi LTS yang terpasang dan bisa dipanggil dari terminal. Istilah-istilah sisanya akan menempel sendiri seiring contoh yang dijalankan.

Ringkasan#

  • Java lahir pada 1995 di Sun Microsystems dengan janji write once, run anywhere, dan kini dikelola Oracle bersama komunitas OpenJDK.
  • Sejak Java 9 versi baru keluar tiap enam bulan, sedangkan versi LTS seperti Java 21 menjadi pilihan aman untuk belajar dan produksi.
  • Kode Java selalu berada di dalam kelas dan bertipe statis, sehingga terlihat lebih panjang tetapi diperiksa compiler sebelum berjalan.
  • Ranah pemakaiannya terbesar di backend enterprise, aplikasi Android, dan big data, sedangkan applet browser sudah menjadi sejarah.

Referensi#