JAVA adalah salah satu bahasa pemrograman
komputer yang berorientasi objek, diciptakan oleh satu tim di Sun
Microsystem, perusahan workstation UNIX yang cukup terkenal. JAVA
diciptakan berdasarkan bahasa C++, dengan tujuan “platform independent”
(dapat dijalankan pada berbagai jenis hardware tanpa kompilasi ulang),
dengan slogan “Write Once Run Anywhere” (WORA). Dibandingkan dengan
bahasa C++ maka JAVA pada hakekatnya lebih sederhana, dan memakai objek
secara murni.
Sebagai perkenalan aplikasi maka tim pengembang Java menciptakan HotJava,
suatu aplikasi yang ditulis dalam bahasa JAVA. HotJava adalah aplikasi
“Web-Browser” yang mampu menjalankan program-program JAVA yang disebut
“Applet” pada halaman Web. Munculnya JAVA telah meransang munculnya
dinamika dalam dunia Web,
tidak statis lagi, dan bisa memberi layanan interaktif. Dewasa ini
semua Web-Browser sudah menunjang aplikasi JAVA bahkan kemunculan Java
telah memicu munculnya hal-hal baru seperti JavaScript, Visual J++,
Active-X dll, yang berusaha menandingi kekuatan JAVA dalam dunia Web.
Walaupun aplikasi-aplikasi JAVA umumnya dirancang untuk Web, namun
pada hakekatnya JAVA adalah bahasa “general purpose” yang bisa dipakai
untuk menulis program pada umumnya seperti pada bahasa C dan C++.
Bahasa JAVA tidak muncul secara tiba-tiba, atau karena penemuan
aksidental. Asal usul JAVA dimulai pada tahun 1991 ketika Sun
MicroSystem sedang melakukan eksperimen penelitian pada produk
elektronika. James Gosling (kepala proyek penelitian) beserta Patrick
Naughton ditugaskan untuk merancang perangkat lunak yang independent,
tidak bergantung pada jenis perangkat keras agar bisa dipakai pada
berbagai peralatan elektronik. James Gosling kemudian memakai bahasa C++
namun ternyata dia mengalami berbagai kesulitan, oleh karena itu suatu
bahasa baru diciptakan yang didasarkan pada C++ namun dengan beberapa
perbaikan. Bahasa ini kemudian disebut Oak, dan dipakai untuk membuat
perangkat lunak cerdas bagi peralatan-peralatan elektronik buatan Sun
MicroSystem. Pada tahun 1994 ketika Web mulai populer, maka nama bahasa
Oak kemudian diganti menjadi JAVA (salah satu sebabnya karena ternyata
nama Oak terlebih dahulu telah dipakai untuk hal yang lain, kemudian
nama JAVA kelihatannya belum ada yang pakai hanya dipakai untuk nama
kopi panas, dan menurut Gosling nama ini cukup “cool”, Gosling
ter-inspirasi menggunakan nama Java ketika sedang meminum kopi). JAVA
kemudian dipakai untuk membuat suatu browser yang bernama WebRunner,
setelah berhasil browser ini kemudian disebut HotJava dengan simbol
secangkir kopi panas.
Tahun 1995 merupakan tahun yang paling penting bagi bahasa Java. JAVA
dan HotJava kemudian diumumkan di Web, versi Alpha dirilis pada awal
tahun 1995. JAVA pada awalnya hanya diperuntukkan bagi SPARC Solaris,
kemudian di-implementasikan juga pada Windows NT, dan pada musim panas
1995 baru di-implementasi untuk Windows 95 dan Linux. JAVA versi Beta 1
diumumkan pada musim gugur 1995, kemudian disusul dengan versi Beta 2
pada bulan Desember, pada saat yang sama MicroSoft dan IBM menyatakan
dukungan mereka terhadap teknologi JAVA.
Pada tanggal 23 Januari 1996, JAVA 1.0 resmi diumumkan dan disediakan
pada Web untuk di-download, kemudian NetScape 2.0 salah satu browser
terkenal mengadopsi JAVA dan JAVASCRIPT. Perkembangan JAVA tidak
berhenti disana, berbagai teknologi yang berkaitan kini telah
diperkenalkan, seperti J2EE (Java 2 Enterprise Edition), JavaBean, Java Server Page (JSP), dan JME (Java Mobile Edition).
Salah satu kemampuan dari bahasa JAVA adalah pemakaian Applet pada
halaman Web untuk suatu bentuk interaksi dengan pengunjung situs Web,
misalnya seperti yang ditampilkan pada salah satu halaman Web berikut
ini dimana Applet dipakai untuk belajar sejarah Mesir.
Karakteristik JAVA
Menurut definisi yang diberikan oleh Sun MicroSystem, JAVA adalah bahasa pemrograman yang simple,
object-oriented, distributed, interpreted, robust, secure, architecture
neutral, portable, high-performance, multithreaded, dan dynamic.
Java bahasa yang simple: rancangan bahasa Java dibust
sedemikian rupa sehingga dengan cepat dapat dikenali dan dipahami oleh
programmer pertama karena mirip dengan bahasa C / C++ dan yang kedua
lebih sederhana dari C/C++ dalam beberapa hal, karena hal-hal yang sulit
pada C/C++ sudah dihilangkan pada Java, misalnya pemakaian pointer.
Java bahasa yang simple: rancangan bahasa Java disebut
sedemikian rupa sehingga dengan cepat dapat dikenali dan dipahami oleh
programmer pertama karena mirip dengan bahasa C / C++ dan yang kedua
lebih sederhana dari C/C++ dalam beberapa hal, karena hal-hal yang sulit
pada C/C++ sudah dihilangkan pada Java, misalnya pemakaian pointer.
Java adalah bahasa yang object-oriented : konsep objek
diterapkan pada pembuatan program Java, bahkan Java menggunakan konsep
objek ini secara murni, sehingga tidak mungkin seseorang membuat program
Java tanpa mendefinisikan class dan menggunakan object.
Java adalah bahasa yang distributed : bahasa Java dirancang
sedemikian rupa sehingga mendukung pembuatan aplikasi dalam jaringan
komputer. Java menyediakan beberapa kelas-objek untuk mendukung aplikasi
jaringan yang dihimpun dalam paket java.net.
Java adalah bahasa yang robust : rancangan Java dibuat
sehingga mengurangi kemungkinan program menjadi beku (freeze) ketika
dijalankan, kemungkinan error diminimalkan, misalnya dengan menerapkan strong-typed
sehingga program bisa terhindar dari kesalahan karena tipe data yang
keliru. Java menerapkan pula model memory yang dapat mencegah memory
yang corrupt dan overwrited, misalnya dengan membuang pemakaian pointer.
Java adalah bahasa yang secure : secara otomatis Java
menerapkan pengamanan terhadap aplikasi sehingga mengurangi kemungkinan
adanya serangan dari pengguna jaringan.
Java adalah bahasa yang architecture neutral : program Java
yang telah di-kompilasi dapat dijalankan pada berbagai mesin dan tidak
bergantung pada satu arsitektur komputer saja.
Java adalah bahasa yang portable : program Java sangat mudah
dipindahkan dari satu mesin ke mesin lain tanpa di-kompilasi ulang,
karena pada hakekatnya ketika di-kompilasi maka program Java diubah
kedalam format bytecode yang diterima oleh semua mesin, kemudian pada setiap mesin ini tersedia Java-run-time atau Java-virtual-machine (JVM) yang dapat menjalankan bytecode.
Java adalah bahasa yang high-performance : pada hakekatnya
program C yang telah dikompilasi berjalan jauh lebih cepat dari Java,
karena hasil kompilasi C adalah bahasa mesin dari komputer yang dipakai
meng-kompilasi, namun hasil kompilasi ini belum tentu bisa jalan pada
komputer yang berbeda arsitektur. Program Java dikompilasi menjadi
bytecode yang bisa jalan diberbagai mesin, namun ketika dijalankan
bytecode ini harus diterjemahkan oleh JVM kedalam bahasa mesin yang
sesuai, sehingga lebih lambat dari C, namun karena Java dapat digunakan
pada jaringan komputer yang kenyataan-nya tidak terlalu cepat karena
hambatan saluran komunikasi maka program Java masih terasa cukup cepat.
Java adalah bahasa yang multithreaded : Java dirancang untuk
menangani berbagai aplikasi yang jalan secara bersamaan, misalnya
memainkan lagu, sambil melakukan download, dan pengguna sedang melakukan
scrolling pada window yang diamati-nya. Kejadian ini yang disebut
multithreaded.
Java adalah bahasa yang dynamic : bahasa Java dirancang
untuk ber-adaptasi dengan lingkungannya yang dapat berubah dengan cepat,
Java dapat memanggil berbagai kelas-objek pada saat dibutuhkan,
walaupun harus melalui jaringan, disamping itu Java memiliki
representasi run-time sehingga objek yang sedang digunakan oleh suatu
aplikasi dapat diperiksa berasal dari kelas yang mana melalui informasi
run-time.
JAVA : Kompilator dan Interpreter
Sebelum bahasa Java diperkenalkan sebagai bahasa pemrograman maka
pada umumnya bahasa program seperti Pascal, C, dan C++ menggunakan
kompilator untuk menterjemahkan program menjadi bahasa assembly atau
bahasa mesin. Bahasa BASIC dikenal sebagai bahasa interpreter dimana
program tidak di-kompilasi tetapi langsung diterjemahkan oleh
interpreter pada saat baris program diketik kedalam memory komputer.
Bahasa Java pada hakekatnya menggunakan kedua teknik tersebut,
kompilator dan juga interpreter. Ketika program Java yang sedang di-edit
akan di-rekam maka nama file-nya harus memiliki ekstensi .java. File source ini kemudian di-kompilasi dengan kompilator javac menjadi file bytecode, bukan assembly dan bukan bahasa mesin. Hasil kompilasi ini dalam bytecode tersimpan dalam file dengan ekstensi .class, file ini tidak bisa dijalankan (eksekusi) karena bukan bahasa mesin atau assembly.
Diperlukan suatu interpreter untuk menjalankan file .class hasil
kompilasi, interpreter ini bisa termuat dalam Web-browser yang telah
meng-adopsi Java untuk menjalankan Java Applet, atau bisa dalam bentuk
interpreter java.exe untuk menjalankan aplikasi java.
Interpreter Java biasa disebut sebagai JVM (Java Virtual Machine)
yang disediakan oleh Sun Microsystem untuk setiap platform, dengan
teknik ini maka program Java bisa berslogan WORA, karena program yang
di-distribusi adalah hasil kompilasi .class yang bentuknya sama untuk
setiap platform, kemudian nanti setelah .class ini mau dijalankan, maka
barulah di-interpret oleh masing-masing JVM yang ada pada setiap
platform.
Tidak ada komentar:
Posting Komentar