PENDAHULUAN DAN SEJARAH JAVA
PENDAHULUAN SEJARAH
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
:
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 benar- benar 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 protokol 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
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).
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++
·
Pembuat
program java telah
merancang java untuk menghilangkan pengalokasian dan
dealokasi memori secara manual, karena java memiliki Garbage Collection.
·
Diperkenalkannya deklarasi array yang sebenarnya
dan menghilangkan aritmatika pointer.
Hal ini yang
sering menyebabkan memori overwrite.
·
Di hilangkannya multiple inheritance, mereka
menggantinya dengan interface.
sipp..
BalasHapusok
Hapus