pengenalan java programming

advertisement
PENGENALAN JAVA PROGRAMMING
Dany Setiawan
[email protected]
Abstrak
Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer
termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James Gosling saat masih
bergabung di Sun Microsystems saat ini merupakan bagian dari Oracle dan dirilis tahun
1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun
dengan sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin aras
bawah yang minimal. Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam pcode (bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM).
Java merupakan bahasa pemrograman yang bersifat umum/non-spesifik (general
purpose), dan secara khusus didisain untuk memanfaatkan dependensi implementasi
seminimal mungkin. Karena fungsionalitasnya yang memungkinkan aplikasi java
mampu berjalan di beberapa platformsistem operasi yang berbeda, java dikenal pula
dengan slogannya, "Tulis sekali, jalankan di mana pun". Saat ini java merupakan bahasa
pemrograman yang paling populer digunakan, dan secara luas dimanfaatkan dalam
pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi berbasis web.
Kata Kunci:
Java
Pendahuluan
Bahasa pemrograman Java terlahir dari The Green Project, yang berjalan selama
18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek tersebut belum
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton,
Mike Sheridan, dan James Gosling, beserta sembilan pemrogram lainnya dari Sun
Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe
Palrang.
Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di
Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah
program Java Oakpertama, yang ditujukan sebagai pengendali sebuah peralatan dengan
teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini
dinamai "*7" (Star Seven).
Setelah era Star Seven selesai, sebuah anak perusahaan Tv kabel tertarik
ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan
kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.
Perusahaan baru ini bertambah maju: jumlah karyawan meningkat dalam waktu
singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian
Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal
tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan
akademisi dan militer.
Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk
membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film
1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama
menjadi Hot Java.
Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2
dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat
kabar San Jose Mercury News pada tanggal 23 Mei 1995.
Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di
sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt
dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk
Netscape.
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja
"Bapak Java", James Gosling. Nama Oak ini tidak dipakai untuk versi release Java
karena sebuah perangkat lunak lain sudah terdaftar dengan merek dagang tersebut,
sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni
yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal
dari Pulau Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata Jawa
(bahasa Inggris untuk Jawa adalah Java).
Pembahasan
Apa itu Teknologi JAVA
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.
1. Platform Java
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Java sebagai platform pengembangan software, secara garis besar dibedakan ke
dalam 3 arahan :
 J2SE
Java 2 Standard Edition mencakup core dari bahasa pemrograman Java,
memuat library-library inti yang dibutuhkan seperti IO, Networking dan
JDBC.
 J2EE
Java 2 Enterprise Edition adalah pengembangan Java untuk solusi
enterprise, mulai dari aplikasi berbasis Web dengan Servlet dan JSP,
aplikasi terdistribusi dengan EJB, sebagaimana aplikasi integrasi enterprise
seperti Web Service.
 J2ME
Java 2 Micro Edition adalah pengembangan Java untuk mobile device,
seperti handphone, pocket PC dan PDA. Pengembangan ke arah mobile
device ini menuntut Java untuk beradaptasi dengan mesin yang terbatas
dalam memory dan processor.
2. Development Environment
Sebagai sebuah peralatan pembangun, teknologi Java menyediakan banyak
tools : compiler, interpreter, penyusun dokumentasi, paket kelas dan sebagainya.
3. Aplikasi
Aplikasi dengan teknologi Java secara umum adalah aplikasi serba guna yang
dapat dijalankan pada seluruh mesin yang memiliki Java Runtime Environment
(JRE).
4. Deployment Environment
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Terdapat dua komponen utama dari Deployment Environment. Yang
pertamaadalah 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.
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
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
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
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Performance pada Java sering dikatakan kurang tinggi. Namun performance
Java dapat ditingkatkan menggunakan kompilasi Java lain seperti buatan
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.
Sebagian Fitur dari 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.
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
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.
 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.
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
 Kedua, bytecode verifier membaca bytecode sebelum dijalankan dan
menjamin bytecode memenuhi aturan – aturan dasar bahasa Java.
 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
dieksekusi. Java juga menyediakan beragam teknik pengamanan lain :
 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.
 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 popup menipu sebagai permintaan keterangan username dan password.
Memulai Java
Sebelum memulai untuk belajar java, sebaiknya siapkan dulu tools yang
diperlukan yaitu JDK atau Java Development Kit J2SE (Java 2 Standard Edition) dari
situs http://java.sun.com.
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Mengapa memilih J2SE? karena yang kita pelajari adalah pemrograman java
yang dikhususkan untuk komputer desktop. Tidak bisa hanya menggunakan JRE (Java
Runtime Environment) Karena JRE tidak menyertakan paket compiler didalamya.
Gunakan JDK karena dalam JDK telah lengkap semua yang kita perlukan dalam
pembelajaran disini yaitu compiler maupun runtime environmentnya.
Menuliskan Source Kodenya
Ada beberapa IDE atau development environtment atau tool tambahan yang dapat
kita pergunakan untuk menuliskan source code java seperti Eclipse atau Netbeans.
Namun karena kita sedang mempelajari dasar pemrogramannya, maka saya
berinisiatif menggunakan notepad saja supaya kita lebih mamahaminya.
Program JAVA
Contoh kode program Hello world yang ditulis menggunakan bahasa
pemrograman Java adalah sebagai berikut:
// Outputs "Hello, world!" and then exits
public class HelloWorld {
public static void main(String args[]) {
System.out.println("Hello, world!");
}
}
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Tahap Kompilasi Java
1. Tulis / Ubah. Pemrogram menulis program dan menyimpannya di media
dalam bentuk berkas '.java'.
2. Kompilasi. Pengkompilasi membentuk bytecodes dari program menjadi
bentuk berkas '.class'.
3. Muat. Pemuat kelas memuat bytecodes ke memori.
4. Verifikasi. Peng-verifikasi memastikan bytecodes tidak mengganggu sistem
keamanan Java.
5. Jalankan. Penerjemah menerjemahkan bytecodes ke bahasa mesin.tidak bisa
di pakai‘’
Penutup
Sebuah perusahaan berasal dari California yang membuat software dan hardware
computer. Didirikan tahun 1982 oleh Andeas Bechtolsheim, Vinod Khosla dan Scott
Mc Neally. Perusahaan ini lebih terkenal karena pengembangan computer untuk system
operasi UNIX. Sistim operasi yang dikembangkan oleh Bell Labs pada awal tahun
1970.
Referensi
 http://id.wikipedia.org/wiki/Java
 http://prita.staff.gunadarma.ac.id/Downloads/files/28624/Pengenalan+Ja
va.pdf
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Biografi
Nama Lengkap
: Dany Setiawan
Alias
: Dany
Tempat Lahir
: Curug, Tangerang, Indonesia
Tanggal Lahir
: Sabtu, 02 November 1991
Zodiak
: Scorpio
Warga Negara
: Indonesia
Email
: [email protected]
Lisensi Dokumen:
Copyright © 2008-2014 ilmuti.org
Seluruh dokumen di ilmuti.org dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial
(nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari ilmuti.org
Download