Sabtu, Februari 21, 2009

Sejarah Java

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.Pada perkembangan selanjutnya, proyek ini diberi 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. Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemeritaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995. Java pertama kali diluncurkan pada tahun 1995 sebagai bahasa pemrograman umum (general purpose programming language) dengan kelebihan dia bisa dijalankan di web browser sebagai applet.

Sejak awal, para pembuat Java telah menanamkan visi mereka ke dalam Java untuk membuat piranti-piranti yang ada di rumah (small embedded customer device) seperti TV, telepon, radio, dan sebagainya supaya dapat berkomunikasi satu sama lain. Tentu saja jalan menuju visi ini tidak mudah untuk ditemukan apalagi untuk ditempuh. Langkah pertama yang diambil oleh Sun Microsystem adalah dengan membuat JVM (Java Virtual Machine) yang kemudian diimplementasikan dalam bentuk JRE (Java Runtime Environment). JVM adalah lingkungan tempat eksekusi program Java berlangsung dimana para objek saling berinteraksi satu dengan yang lainnya. Virtual Machine inilah yang menyebabkan Java mempunyai kemampuan penanganan memori yang lebih baik, keamanan yang lebih tinggi serta portabilitas yang besar.

Apabila kita hanya ingin menjalankan program Java, maka kita cukup memiliki JRE saja. Tapi seandainya kita ingin mengembangkan perangkat lunak sendiri, JRE saja tidak cukup. Untuk lebih meningkatkan produktivitas pengembang perangkat lunak, Sun juga meluncurkan SDK (Standard Development Kit) yang berisi kakas dan API untuk membuat program aplikasi berbasis Java. Pada tahun 1999 Sun meluncurkan J2EE (Java 2 Enterprise Edition) sebagai framework untuk membuat aplikasi enterprais berskala besar. Pada tahun 2001, Sun meluncurkan J2ME yang kelak menjadi salah satu standar pemrograman di dalam PDA maupun handphone. Komunitas OpenSource sendiri mempunyai platform yang disebut dengan Jini untuk merealisasikan visi awal dari Java

Kelebihan Java

Mengapa Java sering dibicarakan dan memiliki daya tarik bagi para programmer? Karena Java merupakan suatu teknologi yang unik dan revolusioner dan merupakan teknologi pertama di dunia software yang memiliki semboyan “write once, run anywhere”. Semboyan tersebut telah terbukti karena banyak program Java dapat dijalankan di berbagai platform Sistem Operasi, seperti Linux, Windows maupun Unix.

Java telah mengatasi masalah portabilitas yang sering menjadi kendala dan hambatan dalam pembuatan suatu aplikasi software. Mengapa? Karena software developer harus mengeluarkan banyak tenaga, pikiran dan waktu untuk menghasilkan aplikasi yang dapat berjalan di operating system atau platform lain. Java dapat mengatasi kendala tersebut karena program Java dapat dijalankan secara langsung tanpa banyak perubahan berarti di sistem operasi atau platform lain. Java juga didesain untuk menghasilkan program dengan seminimal mungkin bug karena kemampuan sebagai berikut :

  • Java didesain untuk menghilangkan alokasi memori dan dealokasi memori secara manual. Java memiliki garbage collection otomatis yang mencegah adanya memory leak. Memory leak adalah masalah yang sering dihadapi programmer c dan c++ dimana memori yang digunakan untuk objek atau variabel yang sudah tidak digunakan tidak didealokasikan sehingga memungkinkan adanya kehabisan memori karena proses alokasi maupun dealokasi yang tidak diatur dengan baik.
  • Java memiliki array yang tidak memerlukan pointer sehingga memudahkan para programmer.
  • Java menghilangkan banyak kebingungan terjadi apabila terjadi proses assignment(pemberian nilai) pada statemen konditional seperti berikut:
  • If (varnya=5) Kode di atas menyebabkan program Java tidak dapat dikompilasi karena Java membedakan tanda = yang digunakan untuk pemberian nilai dan untuk pengecekan kondisi true atau false yang harus menggunakan tanda = ganda (==).
  • Java menghilangkan multiple inheritance pada c++ dan menggunakan interface yang memiliki kemampuan sama tetapi lebih sederhana.

Karakteristik Java

Secara singkat, karakteristik Java adalah :
  • Sederhana
Java tidak memiliki sintaks aneh tetapi banyak menggunakan sintaks c++ yang sudah banyak dikenal sehingga java tidak menyulitkan bagi para programmer. Bahkan java memberikan banyak peningkatan dan kemudahan dibanding c++.
  • Berorientasi objek
Java merupakan pemrograman berorientasi objek yang murni. Dalam pemrograman Java semua adalah objek, terkecuali tipe data primitif.
  • Dapat didistribusikan dengan mudah
Sifat terdistribusi dari Java sangat tampak sebagai applet dan library yang mampu bekerja dalam jaringan dan bekerja dengan objek terdistribusi (RMI) dengan sangat baik. Saat ini Java juga memiliki kemampuan untuk server side processing yaitu teknologi Java Servlet dan Java Server Pages.
  • Aman
Aman karena program Java memiliki library security serta policy yang membatasi akses applet di komputer client.
  • diinterpretasi oleh interpreter
Java memerlukan virtual machine yang bertindak sebagai interpreter yang menterjemahkan bytecode (file class) menjadi bahasa mesin yang dimengerti oleh komputer host.
  • Portabel
Portabel karena Java dapat dijalankan di berbagai platform tanpa perubahan kode sama sekali.
  • Multithreading
Java memiliki kemampuan untuk menangani dan menjalankanbanyak thread sekaligus.
  • Dinamik
Java merupakan teknologi yang terus berkembang, dan hal ini tampak nyata sekali dengan library yang terus ditingkatkan kemampuannya dan kelengkapannya. Bahkan Java saat ini telah menjadi teknologi handal untuk aplikasi mobile dengan adanya Java 2 Micro Edition.
  • netral terhadap arsitektur hardware
Java dapat dijalankan dengan baik pada komputer yang memiliki arsitektur berbeda-beda.
  • Robust
Java merupakan teknologi yang mampu menolong programmer untuk menghasilkan program secara cepat dan handal karena Java mencegah adanya memory leaking, meniadakan pointer(yang merupakan keharusan pada programmer c dan c++) serta mencegah berbagai error yang mungkin terjadi dengan adanya berbagai proses pengecekan awal pada kompilasi.


Free Blogspot Templates by Isnaini Dot Com. Supported by Muscle Car Photos. Powered by Blogger