Fitur Fitur JAVA
1 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.
2 Garbage Collection
Banyak bahasa pemrogaman lain yang mengijinkan
seorang pemrogram 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 pemrogram yang mutlak bertanggung jawab akan hal
ini. Hal ini dapat menyulitkan bilamana pemrogram 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
pemrogram dan mengurangi atau mengeliminasi sumber kesalahan terbesar yang
terdapat pada bahasa yang memungkinkan alokasi dinamis.
3 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
pemrogram 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 pemrogram 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.
Tidak ada komentar:
Posting Komentar