Sejarah Singkat JAVA
Tahun 1991 sekelompok insinyur Sun yang dipimpin oleh Patrick Naughton dan James Gosling ingin merancang bahasa komputer untuk perangkat rumah tangga. Dikarenakan banyak kekurangan seperti tidak memiliki banyak memori, bahasa komputer yang berukuran kecil dan dikarenakan manufaktur yang berbeda harus memiliki prosessor yang berbeda juga, maka bahasanya harus bebas dari manufaktur manapun. Kemudian proyek ini diberi nama proyek "Green".
Untuk menjalankan proyek tersebut Sun merencanakan untuk membangun sebuah sistem operasi yang dibangun dengan bahasa C++. Akan tetapi James Gosling (salah seorang anggota tim proyek) merasa tidak puas dengan bahasa C++. Akhirnya Ia membuat sendiri bahasa pemrograman baru yang diberi nama "Oak". OAK merupakan inspirasi dari sebuah pohon yang berada pada seberang kantornya, namun dikarenakan nama Oak sendiri merupakan nama bahasa pemrograman yang telah ada sebelumnya, kemudian SUN menggantinya dengan JAVA. Nama JAVA sendiri terinspirasi pada saat mereka sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak sengaja salah satu dari mereka menyebutkan kata JAVA yang mengandung arti asal bijih kopi. Akhirnya mereka sepakat untuk memberikan nama bahasa pemrograman tersebut dengan nama Java program dapat dilakukan dengan cepat Sintaks bahasa pemograman java adalah pengembangan dari bahasa pemograman C/C++, sehingga dengan mereka yang sudah terbiasa dengan C/C++ tidak akan mengalami kesulitan mempelajari bahasa pemograman Java.
Java adalah bahasa pemograman yang sederhana dan tangguh. Berikut ini adalah beberapa karakteristik dari Java :
1. Berorientasi Object, Java telah menerapkan konsep pemograman berorientasi object yang modern dalam implementasinya
2. Robust, Java mendorong pemograman yang bebas dengan kesalahan yang bersipat strongly typed dan memiliki run time checking.
3. Portable, pemograman Java berjalan pada system operasi apapun yang memiliki Java Virtual Machine.
4. Multithreding, Java mendukung pemograman multitreding dan terintegrasi secara langsung dalam bahasa Java.
5. Dinamis, program Java dapat melakukan sesuatu tindakan yang ditentukan pada saat eksekusi program dan pada saat kompilasi.
6. Sederhana, Java menggunakan bahasa yang sederhana dan mudah dipelajari.
7. Terdistribusi, Java didesain untuk berjalan pada lingkungan yang terdistribusi seperti halnya internet.
8. Aman, aplikasi yang dibuat dengan bahasa Java lebih dapat dijamin keamanannya terutama untul aplikasi internet.
9. Netral secara arsitektur, Java tidak terkait pada suatu mesin atau mesin operasi tertentu.
10.Interpreted, aplikasi java bisa dieksekusi pada platform yang berbeda-beda karena melakukan interpretasi pada bytecode.
11.Berkinerja tinggi, byte kode Java telah teroptimasi dengan baik sehingga eksekusi program dapat dilakukan dengan cepat
Sebagian Fitur dari JAVA
- Java Virtual Machine (JVM)
JVM adalah sebuah mesin imajiner (maya) yang bekerja dengan menyerupai aplikasi
pada sebuah mesin nyata. JVM menyediakan spesifikasi hardware dan platform
dimana kompilasi kode Java terjadi. Spesifikasi inilah yang membuat aplikasi
berbasis Java menjadi bebas dari platform manapun karena proses kompilasi
diselesaikan oleh JVM.
Aplikasi program Java diciptakan dengan file teks berekstensi .java. Program ini
dikompilasi menghasilkan satu berkas bytecode berekstensi .class atau lebih.
Bytecode adalah serangkaian instruksi serupa instruksi kode mesin. Perbedaannya
adalah kode mesin harus dijalankan pada sistem komputer dimana kompilasi
ditujukan, sementara bytecode berjalan pada java interpreter yang tersedia di
semua platform sistem komputer dan sistem operasi.
- Garbage Collection
Banyak bahasa pemrogaman lain yang mengijinkan seorang programmer
mengalokasikan memori pada saat dijalankan. Namun, setelah menggunakan alokasi
memori tersebut, harus terdapat cara untuk menempatkan kembali blok memori
tersebut supaya program lain dapat menggunakannya. Dalam C, C++ dan bahasa
lainnya, adalah programmer yang mutlak bertanggung jawab akan hal ini. Hal ini
dapat menyulitkan bilamana programmer tersebut alpa untuk mengembalikan blok
memori sehingga menyebabkan situasi yang dikenal dengan nama memory leaks.
Program Java melakukan garbage collection yang berarti program tidak perlu
menghapus sendiri objek–objek yang tidak digunakan lagi. Fasilitas ini mengurangi
beban pengelolaan memori oleh programmer dan mengurangi atau mengeliminasi
sumber kesalahan terbesar yang terdapat pada bahasa yang memungkinkan alokasi
dinamis.
- Code Security
Code Security terimplementasi pada Java melalui penggunaan Java Runtime
Environment (JRE). Java menggunakan model pengamanan 3 lapis untuk melindungi
sistem dari untrusted Java Code.
1. Pertama, class-loader menangani pemuatan kelas Java ke runtime
interpreter. Proses ini menyediakan pengamanan dengan memisahkan kelas–
kelas yang berasal dari local disk dengan kelas–kelas yang diambil dari
jaringan. Hal ini membatasi aplikasi Trojan karena kelas–kelas yang berasal
dari local disk yang dimuat terlebih dahulu.
2. Kedua, bytecode verifier membaca bytecode sebelum dijalankan dan
menjamin bytecode memenuhi aturan–aturan dasar bahasa Java.
3. Ketiga, manajemen keamanan menangani keamanan tingkat aplikasi dengan
mengendalikan apakah program berhak mengakses sumber daya seperti
sistem file, port jaringan, proses eksternal dan sistem windowing.
Setelah seluruh proses tersebut selesai dijalankan, barulah kode program di
eksekusi.
Java juga menyediakan beragam teknik pengamanan lain :
1. Bahasa dirancang untuk mempersulit eksekusi kode perusak. Peniadaan
pointer merupakan langkah besar pengamanan. Java tidak mengenal operasi
pointer. Di tangan programmer handal, operasi pointer merupakan hal yang
luar biasa untuk optimasi dan pembuatan program yang efisien serta
mengagumkan. Namun mode ini dapat menjadi petaka di hadapan
programmer jahat. Pointer merupakan sarana luar biasa untuk pengaksesan
tak diotorisasi. Dengan peniadaan operasi pointer, Java dapat menjadi bahasa
yang lebih aman.
2. Java memiliki beberapa pengaman terhadap applet. Untuk mencegah
program bertindak mengganggu media penyimpanan, maka applet tidak
diperbolehkan melakukan open, read ataupun write terhadap berkas secara
sembarangan. Karena Java applet dapat membuka jendela browser yang
baru, maka jendela mempunyai logo Java dan teks identifikasi terhadap
jendela yang dibuka. Hal ini mencegah jendela pop-up menipu sebagai
permintaan keterangan username dan password.
0 komentar:
Posting Komentar