1.1 Tentang Java
Pada
pertengahan 1990-an, World Wide Web (Internet) telah mengubah dunia menjadi
online. Dengan sistem hypertext,
pemakai internet dapat memilih dan melihat informasi dari seluruh penjuru
dunia. Hypermedia telah memungkinkan
adanya pemakaian grafik atau bahkan video. tetapi Internet tetap mempunyai
kekurangan dalam interaksi antara pengguna dan aplikasi.
Java
menghilangkan kekurangan interaksi yang ada pada internet. Dengan internet browser yang mendukung Java, kita dapat
melihat animasi dan aplikasi interaktif. Fasilitas Java dapat memungkinkan internet
yang lebih interaktif dengan memberikan isi yang executable dari pada hanya dalam file HTML dan file multimedia.
Kemampuan untuk memberikan isi yang executable
adalah kekuatan pada Java.
Java
adalah bahasa pemrograman, sistem runtime, alat pengembangan (development), dan
API (application programming interface).
1.2 Sejarah
Pada
tahun 1991, James Gosling adalah
anggota dari Green, sebuah proyek
penelitian tertutup di Sun Microsystems yang meneliti bagaimana memasang
perangkat komputer pada peralatan rumah. Penelitian ini mempelajari bagaimana
membuat peralatan yang pintar. Group ini juga ingin peralatan-peralatan ini
saling berkomunikasi satu dengan yag lainnya.
Lalu
Green membuat alat prototype bernama *7
(Star7). Alat ini adalah remote yang dapat dioperasikan dengan menyentuh
animasi object pada layarnya. Kemampuan Star7 yang paling hebat adalah
kemampuannya berkomunikasi dengan alat star7 yang lain.
Rencana
awalnya sistem operasi Star7 dibuat dengan C++. Tetapi seperti yang dikatakan
Gosling pada konferensi JavaOne pada Mei 1996 bahwa alat tersebut selalu rusak, lalu dia pergi ke kantornya dan mulai
menulis. Ia bukan menulis surat kekesalannya ke Bjame Stroustrup, developer
utama C++. Tetapi ia ke kantornya dan menulis bahasa baru yang lebih baik untuk
proyek-proyek pada Green dibandingkan dengan C++. Diamenamakan bahasa itu Oak untuk menghormati pohon yang selalu
dia lihat dari jendela kantornya. Dari awal bahasa Gosling dibuat sampai dapat
membuat program yang sederhana, bebas kesalahan (bug-free), mempunyai kemampuan
jaringan (network). Seperti C++, Oak juga object
oriented (berorientasi objek). Oak didesain agar lebih mudah diunakan dan
dipelajari dibandingkan bahasa orientasi objek lainnya.
Program-program
dari Oak harus tidak bergantung platform karena harus dapat dijalankan pada CPU
yang mahal dan juga pada yang murah. ProjectGreen telah menghasilkan alat
demonstrasi, sistem operasi dan bahasa pemrograman yang mengesankan. Lalu
project ini dikenal menjadi FirstPerson pada November 1992. Group ini berfokus
pada industry interactive television
(ITV). Tetapi mereka gagal dalam bisnis ITV, mereka gagal mendapatkan tawaran
Time-Warner (Time-Warner memilih SGI) dan proyek dengan 3DO untuk FistPerson OS
tidak terlaksana.
Pada
saat itu uncul internet browser grafik yang pertama, Mosaic 1.0, yang dibuat
oleh Marc Andreesen seorang
mahasiswa yang bekerja pada National Center untuk Supercomputing Applications. Teknologi Oak sangat cocok untuk
internet karena kemampuannya berjalan di platform-platform yag berbeda-beda. Patrick Naughton dan Jonathan Payne menyelesaikan WebRunner, sebuah internet browser yang
sangat menjanjikan di tangannya, tetapi lalu juga menyadari bahwa Oak tidak bisa
sebagai nama (trademark) karena sudah
ada produk yang memakai nama itu.
Setelah
itu pada Januari 1995 nama Oak digantikan dengan Java dan HotJava
menggantikan WebRunner sebagai nama internet browser. Java bukan singkatan dari
Just Another Vague Acronym atau pun singkatan-singkatan lainnya, Java dipilih
karena nama ini terdengar bagus, ia memang dari nama DNA, Silk, Ruby dan WRL
(Web Runner Languange).
Pada
23 Maret 1995 Hotjava menarik perhatian Andreesen, yang telah menjadi vice
president di Netscape. Yang dikutip dari Mercury News “What these guys are doing is undenieably, absolutely new, it great
stuff. There’s so much stuff people want to do over network tahat they haven’t
had software to do. These guys are really pushing the envelope”.
Beberapa bulan setelah artikel itu
muncul Netscape membeli lisensi bahasa Java untuk digunakan dalam browsernya.
Versi beta Java telah dapat didownload pada November 1995. Sun mengeluarkan developer’s kit dan source code untuk produknya secara grafis untuk semua orang yang
menginginkannya, ribuan orang dan perusahaan menginginkannya.
1.3 Kelebihan Java
a. Sederhana
Java
sederhana karena hanya mempunyai 3 tipe data angka, tipe Boolean, dan array.
Sedangkan yang lain adalah class.
Contohnya adalah string adalah sepenuhnya class bukan array karakter.
Kesederhanaan Java ini membuatnya lebih mudah dipelajari dari pada C++ dan juga
memudahkan programmer C++ untuk mempelajarinya karena kesamaan sintaksnya.
b. Berorientasi Objek
Tidak
seperti C++, Java adalah bahasa berorientasi objek murni. Ini merupakan asalah
satu bidang dimana Java harus terbebas dari belenggu kompatibilitas. Segala
sesuatu pada Java adalah objek dan diturunkan dari satu objek akar. Selain itu,
Java lebih dari sekedar bahasa-Java merupakan lingkungan pengembagan lengkap
dengan hirarki class untuk jaringan, I/O, rancangan GUI (Graphical User
Interface), dan banyak utilitas lainnya.
c. Terdistribusi
Java
memungkinkan membangun sebuah aplikasi untuk didistribusikan karena adanya
koleksi class-class untuk aplikasi jaringan (network). Dengan menggunakan URL (Uniform Resource Locator) pada class Java, sebuah aplikasi dapat
dengan mudah mengakses sebuah remote server. Class-class tersebut juga
menyediakan untuk mengadakan koneksi level socket.
d. Handal dan Aman
Java
adalah bahasa yang handal karena didalamnya terdapat banyak upaya perlindungan
agar kode tetap dapat diandalkan. Pertama Java tidak mempunyai praprosessor dan operator berbeban
lebih, yang bisa menimbulkan banyak kesalahan pada proyek-proyek besar. Kedua
Java melakukan pengecekan tipe sistem yang sangat ketat pada saat kode
di kompilasi dan dijalankan. Ketiga Java dibebaskan dari bug-bug memori yang
sering membayangi pemrograman C dan C++.
e. Multi-platform, portable dan
diinterpretasikan
Java
dirancang untuk tumbuh dalam lingkungan jaringan yang heterogen. Aplikasi Java
akan dapat berjalan di banyak sistem perangkat keras dan sistem operasi.
Lingkungan runtime Java tersedia
untuk Solaris, Windows NT, Windows 9x, Linux, dan MacOS. Mengapa Java bisa
demikian? Jawabannya adalah karena kode byte Java bersifat netral-arsitektur dank
arena adanya interpreter Java. Compiler
Java menerjemahkan kode Java ke dalam format antara yang disebut kode-byte.
Format ini sangat padat dan dengan mudah dan efisien dapat dikirim ke berbagai
platform perangkat keras dan perangkat lunak. Kode byte ini kemudian
di verifikasi dan kemudian di eksekusi oleh interpreter Java.
f. Multi-thread
Multi-thread
adalah kemampuan sebuah proses untuk menjalankan banyak jalur eksekusi secara
simultan. Dengan multi-trhreading
semua konteks eksekusi berbagai memori yang sama. Hal ini membuat sharing data antar-thread lebih
sederhana daripada sharing
antar-proses. Manfaat multi-threading sebagian besar ditujukan pada GUI dan
applet. Thread menyediakan eksekusi asinkron. Dua bidang lain yang banyak
manfaat dari multi-threading adalah server dan simulasi. Sever yang mendukung
multi-threading dapat menciptakan thread baru untuk setiap permintaan klien
yang datang. Dengan demikian server selalu siap menerima hubungan baru.
Disamping itu, server multi-threading tidak akan pernah membuat layanan klien
berprioritas tinggi menunggu layanan berprioritas rendah sampai selesai.
Tidak ada komentar:
Posting Komentar