Selain “diwajibkan” oleh dosen, implementasi bahasa Java sendiri juga sangat
beragam. Java bisa dipakai untuk membuat aplikasi desktop, membuat website
(server side), hingga yang membuat Java seolah-oleh reborn adalah
penggunaannya di aplikasi Android.
Java adalah bahasa native atau bahasa asli yang dipakai untuk membuat aplikasi
android, sehingga jika anda berencana untuk fokus mempelajari pembuatan
aplikasi android, maka belajar Java adalah pilihan yang paling tepat.
Dari pengertian ini kita bisa melihat fitur-fitur terpenting dalam bahasa Java:
Java dirancang sebagai bahasa pemrograman umum yang bisa dipakai untuk
membuat berbagai aplikasi, mulai untuk aplikasi desktop, website, aplikasi mobile,
hingga embedded device seperti microprocessor atau perangkat pintar.
Ini berbeda dengan bahasa pemrograman yang secara khusus dipakai untuk
pembuatan aplikasi tertentu. Sebagai contoh, bahasa pemrograman PHP secara
khusus dipakai untuk membuat website saja.
# Concurrent #
# Class-based, object-oriented #
Mungkin inilah fitur paling terkenal di bahasa Java, yakni pemrograman berbasis
object. Berbeda dengan kebanyakan bahasa pemrograman yang mendukung
pemrograman prosedural dan object sekaligus (seperti C++, PHP, atau Python),
bahasa Java hanya menyediakan konsep object saja.
Bahasa Java memiliki moto “Write once, run anywhere“, yang menekankan bahwa
satu kode kode program Java yang kita tulis, bisa langsung berjalan di banyak
perangkat dan berbagai sistem informasi, tanpa perlu di-compile ulang.
Untuk mendapatkan fitur seperti ini, bahasa Java menggunakan konsep byte code
dan JVM (Java Virtual Machine). Penjelasan lebih lengkap tentang byte code dan
JVM ini akan kita bahas dalam tutorial selanjutnya.
Konsep awal bahasa Java dikembangkan pertama kali pada tahun 1991 oleh
perusahaan Sun Microsystems. Beberapa programmer di perusahaan tersebut
merasa bahasa C dan C++ (yang saat itu sedang populer), tidak lagi mencukupi
untuk project yang sedang mereka kerjakan.
Sun Microsystems kemudian membuat tim kecil yang bernama Green Project.
Tujuannya adalah untuk mengembangkan bahasa pemrograman baru yang lebih
baik dari C++. Beberapa anggota penting dari tim tersebut diantaranya James
Gosling, Mike Sheridan dan Patrick Naughton. Ketiga programmer inilah yang
nantinya dinobatkan sebagai co-founder dari bahasa Java.
James Gosling di 2008 (sumber gambar: wkipedia)
Bahasa baru ini pada awalnya bernama bahasa Oak, yang terinspirasi dari pohon
Oak yang tumbuh di depan kantor James Gosling. Bahasa Oak ditujukan untuk
perangkat televisi interaktif, namun dianggap terlalu canggih untuk teknologi TV
kabel pada saat itu. Di tahun 1993, Green Project mengalihkan fokus utama
pengembangan bahasa Oak ke teknologi yang disebut dikenal sebagai “internet”.
Pemilihan bahasa “Java” terinspirasi dari “Java coffee“, atau kopi jawa. Karena
itulah logo bahasa Java berupa gambar secangkir kopi. Konsep dasar dari bahasa
Java sendiri banyak terinspirasi dari bahasa C dan C++, sehingga jika anda sudah
familiar dengan salah satu bahasa ini, kode program di Java terasa sangat mirip.
Bahasa Java terbagi ke dalam beberapa bidang teknologi sesuai dengan target
sistem yang dirancang. Diantaranya:
Java Micro Edition (Java ME): ditujukan untuk membuat aplikasi di
perangkat kecil (embedded system) dengan komputasi yang terbatas, seperti
kalkukator, tv box, jam tangan, dll.
Java Standard Edition (Java SE): ditujukan untuk perangkat komputer
desktop atau server.
Java Enterprise Edition (Java EE): ditujukan untuk perangkat besar serta
aplikasi internet.
Dalam tutorial ini kita akan memakai Java Standard Edition (Java SE), atau
tepatnya Java SE versi 12 yang dirilis pada Maret 2019.
Sampai saat ini bahasa Java tetap menjadi salah satu bahasa pemrograman yang
paling populer. Dan karena penggunaannya untuk membuat perangkat android,
membuat bahasa Java menjadi salah satu bahasa pemrograman yang wajib
dipelajari.
Dalam tutorial kali ini kita telah membahas alasan belajar bahasa Java, pengertian
bahasa Java serta sejarah singkat dari bahasa Java. Berikutnya kita akan masuk ke
Pengertian Java Virtual Machine.
Bahasa Java memiliki cara tersendiri untuk bisa dijalankan oleh komputer. Tidak seperti alur
proses bahasa pemrograman pada umumnya, agar kita bisa menjalankan kode program yang
ditulis dalam bahasa Java, di dalam komputer harus terinstall JVM (Java Virtual Machine).
Apa itu JVM dan apa fungsinya? Kita akan bahas dengan lebih detail dalam tutorial kali ini.
Java Virtual Machine adalah aplikasi khusus yang harus diinstall agar sebuah komputer bisa
menjalankan program yang ditulis dalam bahasa Java.
Pengertian di atas adalah “versi sederhana”, karena Java Virtual Machine (kita singkat saja
sebagai JVM), secara teori tidak hanya bisa menjalankan aplikasi yang ditulis dalam bahasa
Java, tapi juga dari bahasa pemrograman lain dengan syarat kode tersebut sudah berbentuk “Java
bytecode“.
Agar bisa memahami pengertian ini, kita harus bahas alur proses pembuatan sebuah aplikasi.
Umumnya sebuah bahasa pemrograman desktop memiliki alur sebagai berikut (kita pakai contoh
bahasa C):
1. Tulis kode program menggunakan teks editor, lalu save misalnya sebagai hello_world.c.
2. Compile file hello_world.c menjadi object file bernama hello_world.o.
3. Lakukan proses linker, dimana file hello_world.o akan diproses dan menghasilkan file
executable bernama hello_world.exe (jika ditujukan untuk sistem operasi Windows).
4. File hello_world.exe siap dijalankan.
5. Penjelasan yang lebih lengkap dari alur ini bisa dibaca ke: Cara Mencompile dan
Membuat File exe Bahasa Pemrograman C.
6.
Tim pengembang bahasa Java ingin mengatasi masalah ini agar kode bahasa Java cukup di
compile 1 kali saja dan bisa jalan di semua sistem operasi. Berikut alur proses membuat dan
menjalankan program yang ditulis dalam bahasa Java:
1. Tulis kode program menggunakan teks editor, lalu save misalnya sebagai
hello_world.java
2. Compile file hello_world.java menjadi byte code bernama hello_world.class
3. File hello_world.class bisa dijalankan di semua komputer selama di komputer tersebut
terinstall Java Virtual Machine.
Byte code di langkah ke-2 mirip dengan object code di bahasa pemrograman lain, tapi secara
khusus byte code dipakai untuk merujuk ke object code milik bahasa Java.
Dengan teknik seperti ini, maka secara teori jika keluar sistem operasi baru, kode program Java
bisa langsung jalan, dengan syarat di sistem tersebut sudah terinstall JVM.
Pada awalnya alur kerja JVM seperti ini sering di kritik karena berjalan lebih lambat dibandingan
dengan bahasa pemrograman yang langsung di compile menjadi file exe seperti di bahasa C atau
C++, namun dengan berbagai teknik optimasi, kode program bahasa Java juga bisa di eksekusi
dengan cukup cepat.
Terlihat bahwa bahasa Java memilih untuk “mengorbankan” sedikit performa untuk mencapai
portabilitas. Ini juga sesuai dengan moto bahasa Java yang di populerkan oleh Sun: “Write once,
run anywhere“.
Namun pada prakteknya, tetap saja ada perbedaan fitur antara satu sistem dengan sistem lain,
dimana kode program Java terpaksa harus sedikit di revisi jika ingin beralih ke sistem yang
berbeda. Ini sering jadi candaan developer Java dengan moto: “Write Once, Debug
Everywhere.”
Dalam tutorial kali ini kita telah membahas alur kerja dari proses compile kode program bahasa
Java. Kesimpulannya, kita butuh menginstall sebuah Java Virtual Machine agar bisa
menjalankan kode program yang ditulis dalam bahasa Java.
Berikutnya kita masih harus membahas dua istilah lain yang sangat penting sebelum bisa
membuat kode program menggunakan bahasa Java, yakni pengertian dari JRE dan JDK.
JDK ialah suatu software yang di gunakan untuk membina aplikasi java dan applet
( aplikasi simple ). Ia mengandungi :
TO RUN APLICATIONS
RUNNING JAVA
JD
K
JAVA SOURCE CODE Javac compiler
invoke to create
SAVE with extention
.class file
. java
1- Text editor.
Text editor merupakan peralatan tradisional dalam membina program
computer. Berbagai bagai jenis text editor boleh di gunakan mengikut
kesesuaian bahasa computer yang ingin di gunakan dan jenis computer,
berbeza jenisnya adalah kerana berbeza peralatan peralatan yang di tawarkan
oleh sesetengah text editor tersebut seperti plugin dan lain lain. contoh text
editor ialah :
- Notepad++
-