Java
adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer
termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling
saat masih bergabung di Sun Microsystems saat ini merupakan bagian dari
Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis
yang terdapat pada C dan C++ namun dengan sintaksis model objek yang
lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal.
Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code (
bytecode)
dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM). Java
merupakan bahasa pemrograman yang bersifat umum/non-spesifik (
general purpose),
dan secara khusus didisain untuk memanfaatkan dependensi implementasi
seminimal mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi
java mampu berjalan di beberapa platform sistem operasi yang berbeda,
java dikenal pula dengan slogannya, "
Tulis sekali, jalankan di mana pun".
Saat ini java merupakan bahasa pemrograman yang paling populer
digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai
jenis perangkat lunak aplikasi ataupun aplikasi berbasis web.
Sejarah Perkembangan Java
Bahasa
pemrograman Java terlahir dari The Green Project, yang berjalan selama
18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut
belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh
Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy, beserta
sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil
proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang.
Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven).
Setelah era Star Seven
selesai, sebuah anak perusahaan Tv kabel tertarik ditambah beberapa
orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada
sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.
Perusahaan
baru ini bertambah maju, jumlah karyawan meningkat dalam waktu singkat
dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan
pemakaian Internet sebagai medium yang menjembatani kerja dan ide di
antara mereka. Pada awal tahun 1990-an, Internet masih merupakan
rintisan, yang dipakai hanya di kalangan akademisi dan militer.
Mereka menjadikan perambah (browser)
Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang
dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada
perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.
Pada
sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi
1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama
kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995.
Sayang
terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di
sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek,
Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc
Andreessen, membentuk Netscape.
Nama
Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja
"Bapak Java", James Gosling. Nama Oak ini tidak dipakai untuk versi
release Java karena sebuah perangkat lunak lain sudah terdaftar dengan
merek dagang tersebut, sehingga diambil nama penggantinya menjadi
"Java". Nama ini diambil dari kopi murni yang digiling langsung dari
biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal dari Pulau
Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata
Jawa (bahasa Inggris untuk Jawa adalah Java).
Versi Awal
Versi
awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan
Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal
yang terus dikembangkan pada versi selanjutnya:
java.lang
: Peruntukan kelas elemen-elemen dasar.
java.io
: Peruntukan kelas input dan output, termasuk penggunaan berkas.
java.util
: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan.
java.net
: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.
java.awt
: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)
java.applet
: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web
Kelebihan
- Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform/sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja.
Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan
dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa
mesin/bytecode) sekali lalu hasilnya dapat dijalankan di atas
beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah
program berbasis java dikerjakan diatas operating system Linux tetapi
dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung
sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun
Solaris. Penyebanya adalah setiap sistem operasi menggunakan programnya
sendiri-sendiri (yang dapat diunduh dari situs Java) untuk
meninterpretasikan bytecode tersebut.
- OOP (Object Oriented Programming - Pemrogram Berorientasi Objek)
- Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan library/perpustakaan
(kumpulan program program yang disertakan dalam pemrograman java) yang
sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun
aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan
komunitas Java yang besar yang terus menerus membuat
perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan
pembangunan aplikasi.
- Bergaya C++,
memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak
pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat
banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java.
Universitas-universitas di Amerika Serikat juga mulai berpindah dengan
mengajarkan Java kepada murid-murid yang baru karena lebih mudah
dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan
mengambil jurusan komputer.
- Pengumpulan sampah
otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para
pemrogram tidak perlu melakukan pengaturan memori secara langsung
(seperti halnya dalam bahasa C++ yang dipakai secara luas).
Kekurangan
- Tulis sekali, jalankan di mana saja - Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X.
- Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode
yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama
kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft
.NET Platform. Dengan demikian, algoritma yang digunakan program akan
lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.
- Penggunaan memori yang banyak.
Penggunaan memori untuk program berbasis Java jauh lebih besar daripada
bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal
(lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan
merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena
trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka
yang masih harus berkutat dengan mesin komputer berumur lebih dari 4
tahun.
sumber :
http://id.wikipedia.org