Teknologi Java
JAVA adalah salah satu bahasa pemrograman komputer yang berorientasi objek, diciptakan oleh satu tim di Sun Microsystem, perusahan workstation UNIX yang cukup terkenal. JAVA diciptakan berdasarkan bahasa C++, dengan tujuan “platform independent” (dapat dijalankan pada berbagai jenis hardware tanpa kompilasi ulang), dengan slogan “Write Once Run Anywhere” (WORA). Dibandingkan dengan bahasa C++ maka JAVA pada hakekatnya lebih sederhana, dan memakai objek secara murni.
Sebagai perkenalan aplikasi maka tim pengembang Java menciptakan HotJava, suatu aplikasi yang ditulis dalam bahasa JAVA. HotJava adalah aplikasi “Web-Browser” yang mampu menjalankan program-program JAVA yang disebut “Applet” pada halaman Web. Munculnya JAVA telah meransang munculnya dinamika dalam dunia Web, tidak statis lagi, dan bisa memberi layanan interaktif. Dewasa ini semua Web-Browser sudah menunjang aplikasi JAVA bahkan kemunculan Java telah memicu munculnya hal-hal baru seperti JavaScript, Visual J++, Active-X dll, yang berusaha menandingi kekuatan JAVA dalam dunia Web.
Walaupun aplikasi-aplikasi JAVA umumnya dirancang untuk Web, namun pada hakekatnya JAVA adalah bahasa “general purpose” yang bisa dipakai untuk menulis program pada umumnya seperti pada bahasa C dan C++.
Bahasa JAVA tidak muncul secara tiba-tiba, atau karena penemuan aksidental. Asal usul JAVA dimulai pada tahun 1991 ketika Sun MicroSystem sedang melakukan eksperimen penelitian pada produk elektronika. James Gosling (kepala proyek penelitian) beserta Patrick Naughton ditugaskan untuk merancang perangkat lunak yang independent, tidak bergantung pada jenis perangkat keras agar bisa dipakai pada berbagai peralatan elektronik. James Gosling kemudian memakai bahasa C++ namun ternyata dia mengalami berbagai kesulitan, oleh karena itu suatu bahasa baru diciptakan yang didasarkan pada C++ namun dengan beberapa perbaikan. Bahasa ini kemudian disebut Oak, dan dipakai untuk membuat perangkat lunak cerdas bagi peralatan-peralatan elektronik buatan Sun MicroSystem. Pada tahun 1994 ketika Web mulai populer, maka nama bahasa Oak kemudian diganti menjadi JAVA (salah satu sebabnya karena ternyata nama Oak terlebih dahulu telah dipakai untuk hal yang lain, kemudian nama JAVA kelihatannya belum ada yang pakai hanya dipakai untuk nama kopi panas, dan menurut Gosling nama ini cukup “cool”, Gosling ter-inspirasi menggunakan nama Java ketika sedang meminum kopi). JAVA kemudian dipakai untuk membuat suatu browser yang bernama WebRunner, setelah berhasil browser ini kemudian disebut HotJava dengan simbol secangkir kopi panas.
Tahun 1995 merupakan tahun yang paling penting bagi bahasa Java. JAVA dan HotJava kemudian diumumkan di Web, versi Alpha dirilis pada awal tahun 1995. JAVA pada awalnya hanya diperuntukkan bagi SPARC Solaris, kemudian di-implementasikan juga pada Windows NT, dan pada musim panas 1995 baru di-implementasi untuk Windows 95 dan Linux. JAVA versi Beta 1 diumumkan pada musim gugur 1995, kemudian disusul dengan versi Beta 2 pada bulan Desember, pada saat yang sama MicroSoft dan IBM menyatakan dukungan mereka terhadap teknologi JAVA.
Pada tanggal 23 Januari 1996, JAVA 1.0 resmi diumumkan dan disediakan pada Web untuk di-download, kemudian NetScape 2.0 salah satu browser terkenal mengadopsi JAVA dan JAVASCRIPT. Perkembangan JAVA tidak berhenti disana, berbagai teknologi yang berkaitan kini telah diperkenalkan, seperti J2EE (Java 2 Enterprise Edition), JavaBean, Java Server Page (JSP), dan JME (Java Mobile Edition).
Salah satu kemampuan dari bahasa JAVA adalah pemakaian Applet pada halaman Web untuk suatu bentuk interaksi dengan pengunjung situs Web, misalnya seperti yang ditampilkan pada salah satu halaman Web berikut ini dimana Applet dipakai untuk belajar sejarah Mesir.
Karakteristik JAVA
Menurut definisi yang diberikan oleh Sun MicroSystem, JAVA adalah bahasa pemrograman yang simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-performance, multithreaded, dan dynamic.
Java bahasa yang simple: rancangan bahasa Java dibust sedemikian rupa sehingga dengan cepat dapat dikenali dan dipahami oleh programmer pertama karena mirip dengan bahasa C / C++ dan yang kedua lebih sederhana dari C/C++ dalam beberapa hal, karena hal-hal yang sulit pada C/C++ sudah dihilangkan pada Java, misalnya pemakaian pointer.
Java bahasa yang simple: rancangan bahasa Java disebut sedemikian rupa sehingga dengan cepat dapat dikenali dan dipahami oleh programmer pertama karena mirip dengan bahasa C / C++ dan yang kedua lebih sederhana dari C/C++ dalam beberapa hal, karena hal-hal yang sulit pada C/C++ sudah dihilangkan pada Java, misalnya pemakaian pointer.
Java adalah bahasa yang object-oriented : konsep objek diterapkan pada pembuatan program Java, bahkan Java menggunakan konsep objek ini secara murni, sehingga tidak mungkin seseorang membuat program Java tanpa mendefinisikan class dan menggunakan object.
Java adalah bahasa yang distributed : bahasa Java dirancang sedemikian rupa sehingga mendukung pembuatan aplikasi dalam jaringan komputer. Java menyediakan beberapa kelas-objek untuk mendukung aplikasi jaringan yang dihimpun dalam paket java.net.
Java adalah bahasa yang robust : rancangan Java dibuat sehingga mengurangi kemungkinan program menjadi beku (freeze) ketika dijalankan, kemungkinan error diminimalkan, misalnya dengan menerapkan strong-typed sehingga program bisa terhindar dari kesalahan karena tipe data yang keliru. Java menerapkan pula model memory yang dapat mencegah memory yang corrupt dan overwrited, misalnya dengan membuang pemakaian pointer.
Java adalah bahasa yang secure : secara otomatis Java menerapkan pengamanan terhadap aplikasi sehingga mengurangi kemungkinan adanya serangan dari pengguna jaringan.
Java adalah bahasa yang architecture neutral : program Java yang telah di-kompilasi dapat dijalankan pada berbagai mesin dan tidak bergantung pada satu arsitektur komputer saja.
Java adalah bahasa yang portable : program Java sangat mudah dipindahkan dari satu mesin ke mesin lain tanpa di-kompilasi ulang, karena pada hakekatnya ketika di-kompilasi maka program Java diubah kedalam format bytecode yang diterima oleh semua mesin, kemudian pada setiap mesin ini tersedia Java-run-time atau Java-virtual-machine (JVM) yang dapat menjalankan bytecode.
Java adalah bahasa yang high-performance : pada hakekatnya program C yang telah dikompilasi berjalan jauh lebih cepat dari Java, karena hasil kompilasi C adalah bahasa mesin dari komputer yang dipakai meng-kompilasi, namun hasil kompilasi ini belum tentu bisa jalan pada komputer yang berbeda arsitektur. Program Java dikompilasi menjadi bytecode yang bisa jalan diberbagai mesin, namun ketika dijalankan bytecode ini harus diterjemahkan oleh JVM kedalam bahasa mesin yang sesuai, sehingga lebih lambat dari C, namun karena Java dapat digunakan pada jaringan komputer yang kenyataan-nya tidak terlalu cepat karena hambatan saluran komunikasi maka program Java masih terasa cukup cepat.
Java adalah bahasa yang multithreaded : Java dirancang untuk menangani berbagai aplikasi yang jalan secara bersamaan, misalnya memainkan lagu, sambil melakukan download, dan pengguna sedang melakukan scrolling pada window yang diamati-nya. Kejadian ini yang disebut multithreaded.
Java adalah bahasa yang dynamic : bahasa Java dirancang untuk ber-adaptasi dengan lingkungannya yang dapat berubah dengan cepat, Java dapat memanggil berbagai kelas-objek pada saat dibutuhkan, walaupun harus melalui jaringan, disamping itu Java memiliki representasi run-time sehingga objek yang sedang digunakan oleh suatu aplikasi dapat diperiksa berasal dari kelas yang mana melalui informasi run-time.
JAVA : Kompilator dan Interpreter
Sebelum bahasa Java diperkenalkan sebagai bahasa pemrograman maka pada umumnya bahasa program seperti Pascal, C, dan C++ menggunakan kompilator untuk menterjemahkan program menjadi bahasa assembly atau bahasa mesin. Bahasa BASIC dikenal sebagai bahasa interpreter dimana program tidak di-kompilasi tetapi langsung diterjemahkan oleh interpreter pada saat baris program diketik kedalam memory komputer.
Bahasa Java pada hakekatnya menggunakan kedua teknik tersebut, kompilator dan juga interpreter. Ketika program Java yang sedang di-edit akan di-rekam maka nama file-nya harus memiliki ekstensi .java. File source ini kemudian di-kompilasi dengan kompilator javac menjadi file bytecode, bukan assembly dan bukan bahasa mesin. Hasil kompilasi ini dalam bytecode tersimpan dalam file dengan ekstensi .class, file ini tidak bisa dijalankan (eksekusi) karena bukan bahasa mesin atau assembly.
Diperlukan suatu interpreter untuk menjalankan file .class hasil kompilasi, interpreter ini bisa termuat dalam Web-browser yang telah meng-adopsi Java untuk menjalankan Java Applet, atau bisa dalam bentuk interpreter java.exe untuk menjalankan aplikasi java.
Interpreter Java biasa disebut sebagai JVM (Java Virtual Machine) yang disediakan oleh Sun Microsystem untuk setiap platform, dengan teknik ini maka program Java bisa berslogan WORA, karena program yang di-distribusi adalah hasil kompilasi .class yang bentuknya sama untuk setiap platform, kemudian nanti setelah .class ini mau dijalankan, maka barulah di-interpret oleh masing-masing JVM yang ada pada setiap platform.
0 komentar: