Proyek Java dimulai pada tahun
1991, ketika sejumlah insinyur perusahaan Sun yang dimotori oleh James Gosling mempunyai
keinginan untuk mendesain sebuah bahasa komputer kecil yang dapat dipergunakan
untuk peralatan konsumen seperti kotak tombol saluran TV. Proyek ini kemudian
diberi nama sandi Green. Keharusan untuk membuat bahasa yang kecil , dan kode
yang ketat mendorong mereka untuk menghidupkan kembali model yang pernah dicoba
oleh bahasa UCSD Pascal, yaitu mendesain sebuah bahasa yang portable yang
menghasilkan kode intermediate. Kode intermediate ini kemudian dapat digunakan
pada banyak komputer yang interpreternya telah disesuaikan. Karena orang-orang
Sun memiliki latar belakang sebagai pemakai unix sehingga mereka lebih
menggunakan C++ sebagai basis bahasa pemrograman mereka, maka mereka secara
khusus mengembangkan bahasa yang berorientasi objek bukan berorientasi
prosedur. Seperti yang dikatakan Gosling ”Secara keseluruhan, bahasa hanyalah
sarana, bukan merupakan tujuan akhir”. Dan Gosling memutuskan menyebut
bahasanya dengan nama “Oak” (diambil dari nama pohon yang tumbuh tepat diluar jendela
kantornya di Sun), tetapi kemudian nama Oak diubah menjadi java, karena nama
Oak merupakan nama bahasa komputer yang sudah ada sebelumnya. Pada tahun 1994
sebagian besar orang menggunakan mosaic, browser web yang tidak diperdagangkan
yang berasal dari pusat Supercomputing Universitas Illinois pada tahun 1993.(
Mosaic sebagian ditulis oleh Marc Andreessen dengan bayaran $6.85 per jam,
sebagai mahasiswa yang melakukan studi praktek. Di kemudian hari ia meraih ketenaran
sebagai salah seorang pendiri dan pemimpin teknologi di netscape) Browser yang
sesungguhnya dibangun oleh Patrick Naughton dan Jonathan Payne dan berkembang
ke dalam browser HotJava yang kita miliki saat ini. Browser HotJava ditulis
dalam Java untuk menunjukkan kemampuan Java. Tetapi para pembuat juga memiliki
ide tentang suatu kekuatan yang saat ini disebut dengan applet, sehingga mereka
membuat browser yang mampu penerjemahkan kode byte tingkat menengah. “Teknologi
yang Terbukti” ini diperlihatkan pada SunWorld ’95 pada tanggal 23 mei 1995,
yang mengilhami keranjingan terhadap Java terus berlanjut.
Kriteria “Kertas Putih” Java
Penulis Java telah menulis
pengaruh “Kertas Putih” yang menjelaskan tujuan rancangan dan keunggulannya.
Kertas mereka disusun lewat 11 kriteria berikut :
- Sederhana (Simple)
Syntax untuk Java seperti syntax
pada C++ tetapi syntax Java tidak memerlukan header file, pointer arithmatic
(atau bahkan pointer syntax), struktur union, operator overloading, class
virtual base, dan yang lainnya. Jika anda mengenal C++ dengan baik, maka anda
dapat berpindah ke syntax Java dengan mudah tetapi jika tidak, anda pasti tidak
berpendapat bahwa Java sederhana.
- Berorientasi Objek (Object Oriented)
Rancangan berorientasi objek
merupakan suatu teknik yang memusatkan rancangan pada data (objek) dan
interface. Fasilitas pemrograman berorientasi objek pada Java pada dasarnya
adalah sama dengan C++. Feature pemrograman berorientasi objek pada Java
benarbenar sebanding dengan C++, perbedaan utama antara Java dengan C++ terletak
pada penurunanberganda (multiple inheritance), untuk ini Java memiliki cara
penyelesaian yang lebih baik.
- Terdistribusi (Distributed)
Java memiliki library rutin yang
luas untuk dirangkai pada protocol TCP/IP sepetrti HTTP dan FTP dengan mudah. Aplikasi
Java dapat membuka dan mengakses objek untuk segala macam NET lewat URL sama
mudahnya seperti yang biasa dilakukan seorang programmer ketika mengakses file
sistem secara lokal.
- Kuat (Robust)
Java dimaksudkan untuk membuat
suatu program yang benarbenar dapat dipercaya dalam berbagai hal. Java banyak
menekankan pada pengecekan awal untuk kemungkinan terjadinya masalah, pengecekan
pada saat run0time dan mengurangi kemungkinan timbulnya kesalahan (error).
Perbedaan utama antara Java dan C++ adalah Java memiliki sebuah model pointer
yang mengurangi kemungkinan penimpaan (overwriting) pada memory dan kerusakan
data (data corrupt).
- Aman (Secure)
Java dimaksudkan untuk digunakan
pada jaringan terdistribusi. Sebelum sampai pada bagian tersebut, penekanan
terutama ditujukan pada masalah keamanan. Java memungkinkan penyusunan program yang
bebas virus, sistem yang bebas dari kerusakan.
- Netral Arsitektur (Architecture Neutral)
Kompiler membangkitkan sebuah format
file dengan objek arsitektur syaraf, program yang di kompile dapat dijalankan
pada banyak prosesor, disini diberikan sistem run time dari Java. Kompiler Java
melakukannya dengan membangkitkan instruksi-instruksi kode byte yang tidak
dapat dilakukan oleh arsitektur komputer tertentu. Dan yang lebih baiik Java
dirancang untuk mempermudah penterjemahan pada banyak komputer dengan mudah dan
diterjemahkan pada komputer asal pada saat run-time.
- Portabel (Portable)
Tidak seperti pada C dan C++, di
Java terdapat ketergantungan pada saat implementasi (implement dependent).
ukuran dari tipe data primitif ditentukan, sebagaimana kelakuan aritmatik
padanya. Librari atau pustaka merupakan bagian dari sistem yang mendefinisikan
interface yang portabel.
- Interpreter
Interpreter Java dapat
meng-eksekusi kode byte Java secara langsung pada komputer-komputer yang
memiliki interpreter. Dan karena proses linking dalam Java merupakan proses
yang kenaikannya tahap demi tahapdan berbobot ringan, maka proses pengembangan
dapat menjadi lebih cepat dan masih dalam penelitian.
- Kinerja Yang Tinggi (High Performance)
Meskipun kinerja kode byte yang
di interpretasi biasanya lebih dari memadai, tetapi masih terdapat situasi yang
memerlukan kinerja yang lebih tinggi. Kode byte dapat diterjemahkan (pada saat
run-time) de dalam kode mesin untuk CPU tertentu dimana aplikasi sedang
berjalan.
- Multithreaded
Multithreading adalah kemampuan
sebuah program untuk melakukan lebih dari satu pekerjaan sekaligus. Keuntunga
dari multithreading adalah sifat respons yang interaktif dan real-time.
- Dinamis
Dalam sejumlah hal, Java
merupakan bahasa pemrograman yang lebih dinamis dibandingkan dengan C atau C++.
Java dirancang untuk beradaptasi dengan lingkungan yang terus berkembang.
Librari dapat dengan mudah menambah metode dan variabel contoh yang baru tanpa banyak
mempengaruhi klien. Informasi tipr run-time dalam Java adalah langsung
(straigtforward).
EDISI JAVA
Java adalah bahasa yang dapat di jalankan dimanapun dan disembarang platform
apapun, diberagam lingkungan : internet, intranet, consumer Electronic products
dan computer Applications. The Java 2 platform tersedia dalam 3 edisi untuk
keperluan berbeda. Untuk beragam aplikasi yang dibuat dengan bahasa java, java
dipaketkan dalan edisi2 berikut :
1. Java 2 Standard Edition ( J2SE
)
2. Java 2 Enterprise Edition (
J2EE )
3. Java 2 Micro Edition ( J2ME )
Masing – masing edisi berisi java
2 Software Development Kit ( J2SDK ) untuk mengembangkan aplikasi dan java 2
Runtime Environment ( J2RE ) untuk menjalankan aplikasi. Kelebihan Java dibandingkan dengan C++ :
o Pembuat program java telah
merancang java untuk menghilangkan pengalokasian dan dealokasi memori secara manual,
karena java memiliki Garbage Collection.
o Diperkenalkannya deklarasi
array yang sebenarnya dan menghilangkan aritmatika pointer. Hal ini yang sering
menyebabkan memori overwrite.
o Di hilangkannya multiple
inheritance, mereka menggantinya dengan interface.
Tidak ada komentar:
Posting Komentar
Catatan : jika ingin mengcopy paste artikel ini diwajibkan untuk mencantumkan sumbernya
1. Berkomentar lah dengan baik
2. Jangan ada SARA
3. Dilarang menaruh link aktif
4. Terima kasih