Senin, 28 Desember 2009

Pengenalan Bahasa JAVA

2.1 Tujuan

Pada bab ini akan dibahas secara singkat tentang sejarah JAVA dan definisi teknologi JAVA. Bab ini juga akan sedikit menyinggung tentang fase – fase dalam program JAVA.

Pada akhir pembahasan, diharapkan pembaca dapat :

1. Menjelaskan fitur – fitur teknologi dari Java meliputi Java Virtual Machine (JVM), garbage collection, dan code security.

2. Menjelaskan perbedaan fase pada pemrograman JAVA

2.2 Latar Belakang JAVA

2.2.1 Sejarah Singkat JAVA

Pada 1991, sekelompok insinyur Sun dipimpin oleh Patrick Naughton dan James Gosling ingin merancang bahasa komputer untuk perangkat konsumer seperti cable TV Box. Karena perangkat tersebut tidak memiliki banyak memori, bahasa harus berukuran kecil dan mengandung kode yang liat. Juga karena manufaktur – manufaktur berbeda memilih processor yang berbeda pula, maka bahasa harus bebas dari manufaktur manapun. Proyek diberi nama kode ”Green”.

Kebutuhan untuk fleksibilitas, kecil, liat dan kode yang netral terhadap platform mengantar tim mempelajari implementasi Pascal yang pernah dicoba. Niklaus Wirth, pencipta bahasa Pascal telah merancang bahasa portabel yang menghasilkan intermediate code untuk mesin hipotesis. Mesin ini sering disebut dengan mesin maya (virtual machine). Kode ini kemudian dapat digunakan di sembarang mesin yang memiliki interpreter. Proyek Green menggunakan mesin maya untuk mengatasi isu utama tentang netral terhadap arsitektur mesin.

Karena orang – orang di proyek Green berbasis C++ dan bukan Pascal maka kebanyakan sintaks diambil dari C++, serta mengadopsi orientasi objek dan bukan prosedural. Mulanya bahasa yang diciptakan diberi nama ”Oak” oleh James Gosling yang mendapat 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. J.E.N.I. Pengenalan Pemrograman 1 2

Produk pertama proyek Green adalah Star 7 (*7), sebuah kendali jarak jauh yang sangat cerdas. Dikarenakan pasar masih belum tertarik dengan produk konsumer cerdas maka proyek Green harus menemukan pasar lain dari teknologi yang diciptakan. Pada saat yang sama, implementasi WWW dan Internet sedang mengalami perkembangan pesat. Di lain pihak, anggota dari proyek Green juga menyadari bahwa Java dapat digunakan pada pemrograman internet, sehingga penerapan selanjutnya mengarah menjadi teknologi yang berperan di web.

Java telah mengakomodasi hampir seluruh fitur penting bahasa – bahasa pemrograman yang ada semenjak perkembangan komputasi modern manusia :

1. Dari SIMULA, bahasa pada tahun 65-an, bahasa yang paling mempengaruhi Java sekaligus C++. Dari bahasa ini diadopsi bentukan – bentukan dasar dari pemrograman berorientasi objek.

2. Dari LISP – bahasa tahun 55-an. Diadopsi fasilitas garbage collection, serta kemampuan untuk meniru generic list processing, meski fasilitas ini jarang yang memanfaatkannya.

3. Dari Algol – bahasa pada tahun 60-an, diambil struktur kendali yang dimilikinya.

4. Dari C++, diadopsi sintaks, sebagian semantiks dan exception handling

5. Dari bahasa Ada, diambil strongly type, dan exception handling.

6. Dari Objective C, diambil fasilitas interface.

7. Dari bahasa SmallTalk, diambil pendekatan single-root class hiƩrarchie, dimana objek adalah satu kesatuan hirarki pewarisan

8. Dari bahasa Eiffel, fasilitas assertion yang mulai diterapkan di sebagian JDK 1.4

J.E.N.I. Pengenalan Pemrograman 1 3

2.2.2 Apa itu Teknologi JAVA?

2.2.2.1 Sebuah Bahasa Pemrograman

Sebagai sebuah bahasa pemrograman, Java dapat membuat seluruh bentuk aplikasi, desktop, web dan lainnya, sebagaimana dibuat dengan menggunakan bahasa pemrograman konvensional yang lain.

Java adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat dijalankan pada berbagai platform sistem operasi. Perkembangan Java tidak hanya terfokus oada satu sistem operasi, tetapi dikembangkan untuk berbagai sistem operasi dan bersifat open source.

2.2.2.2 Sebuah Development Environment

Sebagai sebuah peralatan pembangun, teknologi Java menyediakan banyak tools : compiler, interpreter, penyusun dokumentasi, paket kelas dan sebagainya.

2.2.2.3 Sebuah Aplikasi

Aplikasi dengan teknologi Java secara umum adalah aplikasi serbt a guna yang dapat dijalankan pada seluruh mesin yang memiliki Java Runtime Environment (JRE).

2.2.2.4 Sebuah Deployment Environment

Terdapat dua komponen utama dari Deployment Environment. Yang pertama adalah JRE, yang terdapat pada paket J2SDK, mengandung kelas – kelas untuk semua paket teknologi Java yang meliputi kelas dasar dari Java, komponen GUI dan sebagainya. Komponen yang lain terdapat pada Web Browser. Hampir seluruh Web Browser komersial menyediakan interpreter dan runtime environment dari teknologi Java. J.E.N.I. Pengenalan Pemrograman 1 4

2.2.5 Mengapa Mempelajari JAVA?

Berdasarkan white paper resmi dari SUN, Java memiliki karakteristik berikut :

1. Sederhana (Simple)

Bahasa pemrograman Java menggunakan Sintaks mirip dengan C++ namun sintaks pada Java telah banyak diperbaiki terutama menghilangkan penggunaan pointer yang rumit dan multiple inheritance. Java juga menggunakan automatic memory allocation dan memory garbage collection.

2. Berorientasi objek (Object Oriented)

Java mengunakan pemrograman berorientasi objek yang membuat program dapat dibuat secara modular dan dapat dipergunakan kembali. Pemrograman berorientasi objek memodelkan dunia nyata kedalam objek dan melakukan interaksi antar objek-objek tersebut.

3. Terdistribusi (Distributed)

Java dibuat untuk membuat aplikasi terdistribusi secara mudah dengan adanya libraries networking yang terintegrasi pada Java.

4. Interpreted

Program Java dijalankan menggunakan interpreter yaitu Java Virtual Machine (JVM). Hal ini menyebabkan source code Java yang telah dikompilasi menjadi Java bytecodes dapat dijalankan pada platform yang berbeda-beda.

5. Robust

Java mempuyai reliabilitas yang tinggi. Compiler pada Java mempunyai kemampuan mendeteksi error secara lebih teliti dibandingkan bahasa pemrograman lain. Java mempunyai runtime-Exception handling untuk membantu mengatasi error pada pemrograman.

6. Secure

Sebagai bahasa pemrograman untuk aplikasi internet dan terdistribusi, Java memiliki beberapa mekanisme keamanan untuk menjaga aplikasi tidak digunakan untuk merusak sistem komputer yang menjalankan aplikasi tersebut.

7. Architecture Neutral

Program Java merupakan platform independent. Program cukup mempunyai satu buah versi yang dapat dijalankan pada platform berbeda dengan Java Virtual Machine.

8. Portable

Source code maupun program Java dapat dengan mudah dibawa ke platform yang berbeda-beda tanpa harus dikompilasi ulang.

9. Performance

Performance pada Java sering dikatakan kurang tinggi. Namun performance Java dapat ditingkatkan menggunakan kompilasi Java lain seperti buatan J.E.N.I. Pengenalan Pemrograman 1 5

Inprise, Microsoft ataupun Symantec yang menggunakan Just In Time Compilers (JIT).

10. Multithreaded

Java mempunyai kemampuan untuk membuat suatu program yang dapat melakukan beberapa pekerjaan secara sekaligus dan simultan.

11. Dynamic

Java didesain untuk dapat dijalankan pada lingkungan yang dinamis. Perubahan pada suatu class dengan menambahkan properties ataupun method dapat dilakukan tanpa menggangu program yang menggunakan class tersebut.

2.2.4 Sebagian Fitur dari JAVA

2.2.4.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.2.4.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. J.E.N.I. Pengenalan Pemrograman 1 6

2.2.4.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.

J.E.N.I. Pengenalan Pemrograman 1 7

2.2.5 Fase – fase Pemrograman JAVA

Gambar dibawah ini menjelaskan aliran proses kompilasi dan eksekusi sebuah program Java :

Langkah pertama dalam pembuatan sebuah program berbasis Java adalah menuliskan kode program pada text editor. Contoh text editor yang dapat digunakan antara lain : notepad, vi, emacs dan lain sebagainya. Kode program yang dibuat kemudian tersimpan dalam sebuah berkas berekstensi .java.

Setelah membuat dan menyimpan kode program, kompilasi file yang berisi kode program tersebut dengan menggunakan Java Compiler. Hasil dari adalah berupa berkas bytecode dengan ekstensi .class.

2 Micro Edition.
netral terhadap arsitektur hardware :
Java dapat dijalankan dengan baik pada komputer yang memiliki arsitektur berbeda-beda.
• robust :
Java merupakan teknologi yang mampu menolong programmer untuk menghasilkan program secara cepat dan handal karena Java mencegah adanya memory leaking, meniadakan pointer(yang merupakan keharusan pada programmer c dan c++) serta mencegah berbagai error yang mungkin terjadi dengan adanya berbagai proses pengecekan awal pada kompilasi.

Pengenalan Java

Java merupakan bahasa pemograman yang berorientasi objek, java berasal dari pengembangan bahasa C++ sehingga strukturnya seperti bahasa C++.

Ialah James Gosling dan Patrick Naughton yang berhasil mengembangkan Java dalam suatu proyek dari SUN Microsystem. Awalnya James ingin memberi bahasa pemrograman tersebut dengan nama OAK yang berasal dari pohon yang terdapat pada kantor James Gosling, tetapi akhirnya diberi nama Java setelah mendapat ide sewaktu minum kopi.

Java sering digunakan oleh semua segmen, karena mampu merambah seluruh hal, dari pemrogaman dekstop hingga pemrograman mobile (mobile programming) dan Java juga terkenal mudah digunakan, karena seluruh sistem operasi dapat menjalankan Java. Sistem operasi itu antara lain Window, Linux, DOS, Unix, dan lain-lainnya sehingga banyak pengguna memakainya.

Java telah berkembang dari semula diciptakan untuk pemrograman applet (program komputer yang telah dikompilasi menjadi bytecode, yaitu suatu keadaan program yang dapat dieksekusi langsung; tambahan di dalam suatu homepage selain gambar) yang berjalan di web browser menjadi bahasa pemrograman yang terkenal untuk pengembangan berbagai aplikasi komputer yang berjalan di beragam perangkat mulai dari handled devices seperti handphone, PDA (Personal Digital Assistant) sampai aplikasi khusus yang tersebar di berbagai macam komputer server.

Apakah bahasa Java itu mudah? Bahasa Java merupakan bahasa sederhana, hanya terdiri beberapa struktur yang tetap, sering disebut sebagai bahasa C++ yang kurang, karena susunannya yang lebih kecil dibanding bahasa C++. Namun karena diatur secara baik, bahasa Java mudah diperluas melalui pengembangan-pengembangan untuk keperluan khusus.

Namun bila dikaitkan dengan seluruh kemampuan yang luar biasa tentu java bukan bahasa yang sederhana dan mudah. Walaupun begitu bila kita menyenanginya, mempelajari bahasa Java tidaklah terlalu sulit.

ISTILAH PADA JAVA

Apakah Java?
Java adalah bahasa pemrograman berorientasi objek yang dikembangkan oleh Sun Microsystems sejak tahun 1991. Bahasa ini dikembangkan dengan model yang mirip dengan bahasa C++ dan Smalltalk, namun dirancang agar lebih mudah dipakai dan ­platform independent, yaitu dapat dijalankan di berbagai jenis sistem operasi dan arsitektur komputer­­. Bahasa ini juga dirancang untuk pemrograman di Internet sehingga dirancang agar aman dan portabel.

Platform Independent
Platform independent berarti program yang ditulis dalam bahasa Java dapat dengan mudah dipindahkan antar berbagai jenis sistem operasi dan berbagai jenis arsitektur komputer. Aspek ini sangat penting untuk dapat mencapai tujuan Java sebagai bahasa pemrograman Internet di mana sebuah program akan dijalankan oleh berbagai jenis komputer dengan berbagai jenis sistem operasi. Sifat ini berlaku untuk level source code dan binary code dari program Java. Berbeda dengan bahasa C dan C++, semua tipe data dalam bahasa Java mempunyai ukuran yang konsisten di semua jenis platform. Source code program Java sendiri tidak perlu dirubah sama sekali jika Anda ingin mengkompile ulang di platform lain. Hasil dari mengkompile source code Java bukanlah kode mesin atau instruksi prosesor yang spesifik terhadap mesin tertentu, melainkan berupa bytecode yang berupa file berekstensi .class. Bytecode tersebut dapat langsung Anda eksekusi di tiap platform yang dengan menggunakan Java Virtual Machine (JVM) sebagai interpreter terhadap bytecode tersebut.

JVM sendiri adalah sebuah aplikasi yang berjalan di atas sebuah sistem operasi dan menerjemahkan bytecode program Java dan mengeksekusinya, sehingga secara konsep bisa dianggap sebagai sebuah interpreter. Proses pengeksekusian program Java dapat dilukiskan seperti di Gambar 1. Dengan cara ini, sebuah program Java yang telah dikompilasi akan dapat berjalan di platform mana saja, asalkan ada JVM di sana.

Kompiler dan interpreter untuk program Java berbentuk Java Development Kit (JDK) yang diproduksi oleh Sun Microsystems. JDK ini dapat didownload gratis dari situs java.sun.com. Interpreter untuk program Java sendiri sering juga disebut Java Runtime atau Java Virtual Machine. Interpreter Java, tanpa kompilernya, disebut Java Runtime Environment (JRE) dapat didownload juga di situs yang sama. Untuk mengembangkan program Java dibutuhkan JDK, sementara jika hanya ingin menjalankan bytecode Java cukup dengan JRE saja. Namun untuk mengeksekusi applet (sebuah bytecode Java juga) Anda biasanya tidak perlu lagi mendownload JRE karena browser yang Java-enabled telah memiliki JVM sendiri.

Library

Selain kompiler dan interpreter, bahasa Java sendiri memiliki library yang cukup besar yang dapat mempermudah Anda dalam membuat sebuah aplikasi dengan cepat. Library ini sudah mencakup untuk grafik, desain user interface, kriptografi, jaringan, suara, database, dan lain-lain.

OOP

Java adalah bahasa pemrograman berorientasi objek. Pemrograman berorientasi objek secara gamblang adalah teknik untuk mengorganisir program dan dapat dilakukan dengan hampir semua bahasa pemrograman. Namun Java sendiri telah mengimplementasikan berbagai fasilitas agar seorang programer dapat mengoptimalkan teknik pemrograman berorientasi objek.

Sedikit perbandingan tambahan dengan bahasa C dan C++, Java banyak mewarisi konsep orientasi objek dari C++ namun dengan menghilangkan aspek-aspek kerumitan dalam bahasa C++ tanpa mengurangi kekuatannya. Hal ini mempermudah programer pemula untuk mempelajari Java namun mengurangi keleluasaan programer berpengalaman dalam mengutak-atik sebuah program. Di balik kemudahan yang ditawarkan Java, luasnya fasilitas library Java sendiri membuat seorang programer membutuhkan waktu yang tidak singkat untuk dapat menguasai penggunaan library-library tersebut.
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 emori 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.

DASAR-DASAR PEMROGRAMAN JAVA (#1)

Java adalah bahasa pemrograman berorientasi obyek (PBO) atau dalam bahasa gaulnya yaitu Object Oriented Programming (OOP). Jadi sebelum menggunakan Java sebaiknya terlebih dahulu memahami konsep OOP. Untuk lebih jelasnya mengenai konsep OOP, saya tulis pada kategori OOP dengan judul Konsep Pemrograman Berorientasi Obyek.

Dalam tulisan ini secara garis besar akan saya uraikan mengenai apa saja yang harus dilakukan sebagai langkah awal, mencoba membuat dan menjalankan sebuah program sederhana (seperti biasa program “Hello World!”).

Langkah Awal
Sebelum kita mulai membuat program dengan Java, ada dua bagian penting yang harus dimiliki:

  1. Java Standar Edition Development Kit 6 (JDK 6) yang dapat diunduh (download) pada websitenya Sun Microsystems. Klik disini untuk mengunduh. Setelah selesai diunduh, jangan lupa dipasang (install). Untuk melakukan pemasangan caranya tidak sulit yaitu dengan klik ganda pada file yang telah diunduh kemudian ikuti instruksinya. Kalau masih bingung juga dengan cara pemasangannya, bisa langsung lihat saja disini. JDK 6 merupakan alat untuk membuat, mengembangakan dan menjalankan program dengan Java. Di dalam JDK 6 diantaranya terdapat Java Compiler (javac) dan Java Application Launcher (java). Java Compiler (javac) berfungsi untuk menterjemahkan kode program (.java) kedalam instruksi berupa bytecodes yang dapat dikenali oleh Java Virtual Machine (JVM). Java Application Launcher (java) digunakan oleh JVM untuk menjalankan aplikasi. Dibawah ini adalah gambar yang mengilustrasikan proses pengembangan aplikasi dengan Java.

Sumber gambar: http://java.sun.com/docs/books/tutorial/getStarted/intro/definition.html

  1. Alat untuk menulis/memperbaiki program (Text Editor). Banyak sekali jenis-jenis text editor yang tersedia saat ini baik yang berbayar atau yang gratisan. Bagi pengguna sistem operasi windows bisa menggunakan Notepad (sudah satu paket dengan sistem operasi windows). Kalo tidak nyaman dengan Notepad, saya punya satu referensi yang saya rekomendasikan untuk digunakan yaitu Notepad++. Aplikasi ini 100% gratis. Klik disini untuk mengunduh dan membaca informasi lebih detail.

Membuat Program Sederhana
Setelah langkah awal selesai kita lakukan, maka kita bisa lanjutkan dengan membuat sebuah program sederhana yaitu program untuk menampilkan teks / string “Hello World!”. Ketikkan kode program berikut pada text editor yang anda miliki:

Simpan program diatas dengan nama HelloWorld.java. Perlu diperhatikan pada penulisan program dengan Java adalah Case Sensitive. A tidak sama dengan a, HelloWorld tidak sama dengan helloworld.

Kompilasi HelloWorld.java ke HelloWorld.class
Perintah yang digunakan untuk melakukan kompilasi adalah javac. Kompilasi akan dilakukan pada Command Prompt (Windows), untuk itu Command Prompt harus dijalankan terlebih dahulu.

Menjalankan Command Prompt (Windows XP):

  • Klik tombol Start – All Programs – Accessories – Command Prompt, atau
  • Klik tombol Start – Run, ketikkan cmd kemudian Enter.

Berikut ini adalah proses kompilasi program sederhana yang dibuat sebelumnya. Dengan asumsi program sederhana tersebut disimpan pada drive D folder Java (D:\Java). Folder Java adalah folder pribadi saya untuk menyimpan latihan-latihan pemorgraman java. Jadi Anda boleh menyimpan di drive mana saja dan di folder apa saja (tidak harus sama dengan apa yang saya lakukan, yang penting anda mengerti dan memahami maksudnya).

Pada saat komplilasi jika menemukan error seperti dibawah ini berarti bahwa compiler javac tidak ditemukan. Ini disebabkan oleh karena tempat dari compiler javac berbeda dengan tempat file dari program yang kita buat. Tempat dari compiler javac biasanya terletak pada C:\Program Files\Java\jdk1.6.0_\bin. Maka dari itu seharusnya program yang kita buat, kita simpan juga pada pada folder tersebut, kompilasinya dan menjalankannya juga dilakukan pada folder tersebut. Permasalahannya adalah file-file yang kita simpan di folder bin akan menjadi sembrawut antara file-filenya JDK 6 dan file-file program yang kita buat sendiri.

Supaya compiler javac ataupun launcher java dapat dikenali secara menyeluruh oleh sistem operasi windows, maka kita bisa melakukan seting Variabel PATH pada windows sehingga lokasi instalasi JDK 6 dapat dikenali dimana saja dalam sistem operasi windows. Untuk melakukan seting Variabel PATH, ikuti langkah-langkah berikut (Windows XP):

  1. Klik tombol Start – Control Panel – System
  2. Pada jendela System Properties pilih Advanced – Environment Variables
  3. Tambahkan lokasi folder bin dari installasi JDK 6 untuk PATH didalam User Variables dan System Variables seperti: C:\Program Files\Java\jdk1.6.0_10\bin
  4. Biasanya sudah terdapat beberapa PATH yang sudah diset sebelumnya. Untuk menambahkan PATH untuk folder bin instalasi JDK 6, tambahkan dibelakangnya saja dipisahkan dengan tanda titik koma (;). Contohnya seperti PATH yang ada pada komputer saya: C:\AppServ\Apache2.2\bin;C:\AppServ\php5;C:\AppServ\MySQL\bin;C:\Program Files\Java\jdk1.6.0_10\bin

Kelebihan dan Kekurangan Java

Kelebihan

  • Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis java dikerjakan diatas operating system Linux tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebanya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut.
  • OOP (Object Oriented Programming - Pemrogram Berorientasi Objek) yang artinya semua aspek yang terdapat di Java adalah Objek. Java merupakan salah satu bahasa pemrograman berbasis objek secara murni. Semua tipe data diturunkan dari kelas dasar yang disebut Object. Hal ini sangat memudahkan pemrogram untuk mendesain, membuat, mengembangkan dan mengalokasi kesalahan sebuah program dengan basis Java secara cepat, tepat, mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah satu bahasa pemograman termudah, bahkan untuk fungsi fungsi yang advance seperti komunikasi antara komputer sekalipun.
  • Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi.
  • Bergaya C++, memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitas-universitas di Amerika Serikat juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer.
  • Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).

Kekurangan

  • Tulis sekali, perbaiki di mana saja - Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X.
  • Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.
  • Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.

Minggu, 27 Desember 2009

Pengertian Karakteristik Bahasa Java

1.Sederhana
Bahasa java merupakan adopsi dari bahasa C++ namun sintaks pada java ada yang berbeda dengan bahasa C++ yaitu menghilangkan penggunaan pointer dan multi inheritance. Bahasa java menggunakan fasilitas automatic memory allocation dan memory garbage collection.


2.Berorientasi objek (Object Oriented)
Bahasa Java mengunakan pemrograman berorientasi objek sehingg program yang di buat dapat secara modular dan dapat dipergunakan kembali. Pemrograman berorientasi objek memodelkan dunia nyata kedalam objek dan melakukan interaksi antar objek-objek tersebut.


3. Pendistribusian yang mudah
Bahasa Java di program agar aplikasi dapat terdistribusi secara mudah dengan adanya libraries networking yang terintegrasi pada Java.


4. Interpreter
Program Java dijalankan melalui interpreter yaitu Java Virtual Machine (JVM). Hal ini di karenakan source code Java yang telah dikompilasi menjadi java bytecodes dapat dijalankan pada platform yang berbeda-beda.


5. Robust
Kenggulan dari Compiler pada bahasa Java adalah dimana setiapprogram di exekusi mampu mendeteksi error secara lebih teliti dibandingkan bahasa pemrograman lain dan selai itu bahasa Java juga mempunyai runtime-Exception handling untuk membantu mengatasi error pada pemrograman.

6. Aman
Java memiliki beberapa mekanisme keamanan untuk menjaga aplikasi yang telah di buat.


7. Architecture Neutral
Program Java merupakan platform independent. Program cukup mempunyai satu buah versi yang dapat dijalankan pada platform yang berbeda dengan Java Virtual Machine.


8. Portabel
Source code maupun program Java dapat dengan mudah dibawa ke platform yang berbeda-beda tanpa harus dikompilasi ulang.


9. Performance
Performance pada Java sering dikatakan kurang tinggi. Namun performance Java dapat di atasi dengan menggunakan kompilasi Java lain seperti: Inprise (Microsoft) ataupun Just In Time Compilers atau JIT (Symantec).


10. Multithreaded
Java dapat membuat suatu program yang dapat melakukan beberapa pekerjaan secara sekaligus.


11. Dinamis
Java didesain untuk dapat dijalankan pada lingkungan yang dinamis. Perubahan pada suatu class dengan menambahkan properties ataupun method dapat dilakukan tanpa menggangu program yang menggunakan class tersebut.