JAVA
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 :
1.
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.
2.
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.
3.
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.
4.
Kuat
(Robust)
Java dimaksudkan untuk membuat suatu program yang
benar-benar 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).
5.
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.
6.
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.
7.
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.
8.
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.
9.
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) di dalam kode mesin
untuk CPU tertentu dimana aplikasi sedang berjalan.
10. Multithreaded
Multithreading adalah kemampuan sebuah program
untuk melakukan lebih dari satu pekerjaan sekaligus. Keuntunga dari multithreading
adalah sifat respons yang interaktif dan real-time.
11. 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++
a.
Pembuat
program java telah merancang java untuk menghilangkan pengalokasian dan
dealokasi memori secara manual, karena java memiliki Garbage Collection.
b.
Diperkenalkannya
deklarasi array yang sebenarnya dan menghilangkan aritmatika pointer. Hal ini
yang sering menyebabkan memori overwrite.
c.
Di
hilangkannya multiple inheritance, mereka menggantinya dengan interface.
Comments
Post a Comment