Bahasa pemrograman Java pertama lahir 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, terinspirasi 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 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.
Kelebihan Java :
1. 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.
2. OOP (Object Oriented Programming - Pemrogram Berorientasi Objek)
yang artinya semua aspek yang terdapat di Java adalah Objek. Java
merupakan salah satu bahasa pemrograman berbasis oebjek secara
murni. Semua tipe data diturunkan dari kelas dasar yang disebut Object.
Hal ini sangat memudahkan pemrogram untuk mendesain, membuat,
mengembangkan dan mengalokasi kesalahan sebuah program dengan
basis Java secara cepat, tepat, mudah dan terorganisir. Kelebihan ini
menjadikan Java sebagai salah satu bahasa pemograman termudah,
bahkan untuk fungsi fungsi yang advance seperti komunikasi antara
komputer sekalipun.
3. 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 perpustakaanperpustakaan
baru untuk melingkupi seluruh kebutuhan pembangunan
aplikasi.
4. 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 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.
5. 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 Java
1 Tulis sekali, perbaiki 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.
2 Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari
kode jadi menjadi kode sumber. Ini dimungkinkan karena koe 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.
3 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.
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.
James Gosling |
membuat perambah Java pertama yang dinamai Web Runner, terinspirasi 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 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.
Kelebihan Java :
1. 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.
2. OOP (Object Oriented Programming - Pemrogram Berorientasi Objek)
yang artinya semua aspek yang terdapat di Java adalah Objek. Java
merupakan salah satu bahasa pemrograman berbasis oebjek secara
murni. Semua tipe data diturunkan dari kelas dasar yang disebut Object.
Hal ini sangat memudahkan pemrogram untuk mendesain, membuat,
mengembangkan dan mengalokasi kesalahan sebuah program dengan
basis Java secara cepat, tepat, mudah dan terorganisir. Kelebihan ini
menjadikan Java sebagai salah satu bahasa pemograman termudah,
bahkan untuk fungsi fungsi yang advance seperti komunikasi antara
komputer sekalipun.
3. 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 perpustakaanperpustakaan
baru untuk melingkupi seluruh kebutuhan pembangunan
aplikasi.
4. 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 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.
5. 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 Java
1 Tulis sekali, perbaiki 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.
2 Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari
kode jadi menjadi kode sumber. Ini dimungkinkan karena koe 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.
3 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.