Java adalah bahasa pemrograman dan platform yang multiplatform, memiliki perpustakaan yang lengkap, dan menggunakan pengumpulan sampah secara otomatis."
2. PENGERTIAN JAVA
Java adalah suatu teknologi di dunia software komputer, yang
merupakan suatu bahasa pemrograman, dan sekaligus suatu platform.
Sebagai bahasa pemrograman, Java dikenal sebagai bahasa pemrograman
tingkat tinggi. Java mudah dipelajari, terutama bagi programmer yang
telah mengenal C/C++. Java merupakan bahasa pemrograman
berorientasi objek yang merupakan paradigma pemrograman masa
depan.
Sebagai bahasa pemrograman Java dirancang menjadi handal
dan aman. Java juga dirancang agar dapat dijalankan di semua platform.
Dan juga dirancang untukmenghasilkan aplikasi – aplikasi dengan
performansi yang terbaik, seperti aplikasi database Oracle 8i/9i yang core-
nya dibangun menggunakan bahasa pemrograman Java.
Sedangkan Java bersifat neutral architecture, karena Java
Compiler yang digunakan untuk mengkompilasi kode program Java
dirancang untuk menghasilkan kode yang netral terhadap semua
arsitekture perangkat keras yang disebut sebagai Java Bytecode.
3. Java adalah bahasa pemrograman yang multi platform dan multi
device. Sekali anda menuliskan sebuah program dengan menggunakan Java,
anda dapat menjalankannya hampir di semua komputer dan perangkat lain
yang support Java, dengan sedikit perubahan atau tanpa perubahan sama
sekali dalam kodenya. Aplikasi dengan berbasis Java ini dikompulasikan ke
dalam p-code dan bisa dijalankan dengan Java Virtual Machine.
Fungsionalitas dari Java ini dapat berjalan dengan platform sistem operasi
yang berbeda karena sifatnya yang umum dan non-spesifik.
Slogan Java adalah “Tulis sekali, jalankan di manapun”. Sekarang ini
Java menjadi sebuah bahasa pemrograman yang populer dan dimanfaatkan
secara luas untuk pengembangan perangkat lunak. Kebanyakan perangkat
lunak yang menggunakan Java adalah ponsel feature dan ponsel pintar atau
smartphone.
4. Sebagai sebuah platform, Java terdiri atas dua bagian utama, yaitu:
1. Java Virtual Machine (JVM).
2. Java Application Programming Interface (Java API).
Arsitektur Java dibagi tiga bagian, yaitu:
1. Enterprise Java (J2EE) untuk aplikasi berbasis web, aplikasi sistem
tersebar dengan beraneka ragam klien dengan kompleksitas yang tinggi.
Merupakan superset dari Standar Java
2. Standar Java (J2SE), ini adalah yang biasa dikenal sebagai bahasa Java.
3. Micro Java (J2ME) merupakan subset dari J2SE dan salah satu
aplikasinya yang banyak dipakai adalah untuk wireless device / mobile
device.
5. SEJARAH JAVA
Dimulai pada tahun 1991 dibentuknya suatu tim yang diberi nama green
Tim ini dipimpin oleh Patrick Naughton dan James Gosling (Sekelompok insinyur Sun ).
Awalnya mereka ingin membuat suatu bahasa komputer yang dapat digunakan oleh TV
kabel ( Cable TV Box) yang memiliki memori kecil dan setiap perusahaan memiliki tipe yang
berbeda.
Untuk mengaplikasikan hal tersebut mereka menggunakan hal yang pernah dicoba oleh
bahasa pascal.
Sebelumnya Niclaus Wirth telah membuat sebuah bahasa yang portable yang akan
digunakan dalam mesin bayangan selanjutnya ini disebut sebagai Virtual Mesin namun saat
itu belum diumumkan.
Akhirnya tim green mengunakan ide ini akhirnya mereka menciptakan Java Virtual Mesin.
Vitual mesin inilah yang menbuat java dapat dijalankan diberbagai platform.
Pada tahun 1992 tim green membuat produknya yang diberi nama *7 (Star Seven )
Namun produk ini gagal dipasaran.
Setelah itu dibuat produk yang baru. Inilah java, pada awalnya bahasa pemrograman yang
dibuat tersebut diberi nama “oak “ (Kemungkinan nama ini diambil dari nama pohon yang
ada didepan jendela James Gosling)
6. Namun setelah diperiksa ternyata nama oak sudah pernah digunakan. Maka
lahirlah nama “ Java “
Pada tahun 1993 sampai pertengahan 1994 tim green yang mempunyai nama
baru First person. Inc hanya menghabiskan waktu dengan memperhatikan
penjualan dari produknya. Ternyata tidak satupun orang ditemukan. Akhirnya
pada tahun 1994 First Person dibubarkan.
Pada tahun itu Web berkembang sangat pesat saat itu browser yang banyak
digunakan adalah Mosaic suatu broser yang gratis.
Dalam suatu wawancara pada pertengahan tahun 94 James Gosling
mengatakan “We could build a real cool browser. It was one of the few things in
the client/serve mainstream that needed some of the weird things we’d done:
architecture neutral, real-time,reliable, secure—issues that weren’t terribly
important in the workstation world. So we built a browser.”
Akhirnya dibuatlah suatu browser oleh Patrick Naughton dan Jonathan
Payne.Browser itu diberi nama Hot Java. Browser ini dibuat dengan menggunakan
bahasa java untuk menunjukkan kemampuan dari java.
7. Yang tidak kalah hebatnya mereka juga membuat teknologi yang disebut Aplet
sehingga browser dapat menjalankan kode program didalam browser.
Inilah bukti dari teknologi itu yang ditunjukkan java pada tanggal 25 mei 1995
Sejak saat itu browser java memberikan lisensinya kepada browser lain untuk bisa
menjalankan Applet dan pada tahun 1996 diberikan pada Internet Explorer.
Akhirnya pada tahun 1996 dikeluarkan versi pertama dari java dengan
mengeluarkan java 1.02
Pada tahun 1998 dikeluarkan java 1.2 dan java mulai mengeluarkan slogannya
“Write once, Run anywhre “
Edisi Java
Java adalah bahasa yang dapat dijalankan dimanapun dan di sembarang platform
apapun, di beragam lingkngan : internet, intranets,consumer electronic products,
dan computer applications.The java 2 platform tersedia dalam 3 edisi untuk
keperluan berbeda. Untuk beragam aplikasi yang dibuat dengan bahasa Java, java
dipaketkan dalam edis – edisi berikut:
1.Java 2 Standard Edition ( J2SE )
2.Java 2 Enterprise Edition ( J2EE )
3.Java 2 Micro Edition ( J2ME )
8. Masing – masing edisi berisi Java 2 Software Development Kit ( J2SDK ) untuk
mengembangkan aplikasi dan Java 2 Runtime Environent ( J2RE ) untuk menjalankan
aplikasi.
Kelebihan Java di bandingkan dengan C++
Pembuat program java telah merancang java untuk menghilangkan pengalokasian dan
dealokasi memori secara manual, karena java memiliki Garbage Collection
Diperkenalkannya deklarasi array yang sebenarnya dan menghilangkan aritmatika
pointer. Hal ini yang sering menyebabkan memori overwrite.
Dihilangkannya multiple inheritance, mereka menggantinya dengan interface.
9. Fitur – Fitur Java yang Menarik
Beberapa fitur yang ditawarkan Java API antara lain sebagai berikut :
a. Applet
Program Java yang dapat berjalan di atas browser, yang dapat membuat
halaman HTML lebih dinamis dan menarik.
b. Java Networking
Sekumpulan API (Application Programming Interface) yangmenyediakan fungsi
– fungsi untuk aplikasi – aplikasi jaringan,seperti penyediaan akses untuk TCP,
UDP, IP Adrress dan URL. Tetapi Java Networking tidak menyediakan akses
untuk ICMP dikarenakan alasan sekuriti dan pada kondidi umum hanya
administrator ( root ) yang bisa memanfaatkan protokol ICMP.
c. Java Database Connectivity (JDBC)
JDBC menyediakan sekumpulan API yang dapat digunakan untuk mengakses
database seperti Oracle, MySQL, PostgreSQL, Microsoft SQL Server.
10. d. Java Security
Java Security menyediakan sekumpulan API untuk mengatursecurity dari aplikasi
Java baik secara high level atau low level, seperti public/private key management
dan certificates.
e. Java Swing
Java Swing menyediakan sekumpulan API untuk membangun aplikasi – aplikasi
GUI (Graphical User Interface) dan model GUI yang diinginkan bisa bermacam –
macam, bisa model Java, model Motif/CDE atau model yang dependent terhadap
platform yang digunakan.
f. Java RMI
Java RMI menyediakan sekumpulan API untuk membangun aplikasi – aplikasi Java
yang mirip dengan model RPC (Remote Procedure Call) jadi object - object Java
bisa di call secara remote pada jaringan komputer.
11. g. Java 2D/3D
Java 2D/3D menyediakan sekumpulan API untuk membangun grafik – grafik
2D/3D yang menarik dan juga akses ke printer.
h. Java Server Pages
Berkembang dari Java Servlet yang digunakan untukmenggantikan aplikasi –
aplikasi CGI, JSP (Java Server Pages) yang mirip ASP dan PHP merupakan
alternatif terbaik untuk solusi
aplikasi Internet.
i. JNI (Java Native Interface)
JNI menyediakan sekumpulan API yang digunakan untuk mengakses fungsi –
fungsi pada library (*.dll atau *.so) yang dibuat dengan bahasa pemrograman
yang lain seperti C,C++, dan Basic.
j. Java Sound
Java Sound menyediakan sekumpulan API untuk manipulasisound.
12. k. Java IDL + CORBA
Java IDL (Interface Definition Language) menyediakan dukungan Java untuk
implementasi CORBA (Common Object Request Broker) yang merupakan model
distributed-Object untuk solusi aplikasi besar di dunia networking.
l. Java Card
Java Card utamanya digunakan untuk aplikasi – aplikasi pada smart card, yang
sederhana wujudnya seperti SIM Card pada handphone.
m. JTAPI (Java Telephony API)
Java Telepony API menyediakan sekumpulan API untuk memanfaatkan devices –
devices telepony, sehingga akan cocok untuk aplikasi – aplikasi CTI (Computer
Telephony Integration) yang dibutuhkan seperti ACD (Automatic Call
Distribution), PCPBX dan lainnya.
13. Mengenal Lingkungan Pemrograman Java
Pada sistem operasi Windows, perintah untuk setting path yaitu:
C:>set PATH=c:folderinstalasibin;
Contoh pada modul ini adalah :
C:>set PATH=c:j2sdk1.4.2_04bin;%PATH%
Keterangan : %path% digunakan sebagai backup dari path yang
sudah ada sebelumnya. Dan agar tidak mengulang langkah ini, tempatkan
setting path ini pada file autoexec.bat.
Untuk mengecek apakah variabel %PATH% telah mengandung direktori
C:j2sdk1.4.2_04bin , dapat menggunakan perintah :
C:>echo %PATH%
14. Jika diberikan perintah java -version, kemudian keluar keterangan seperti
gambar dibawah ini maka java siap digunakan.
Untuk melakukan kompilasi kode pemrograman Java, menggunakan perintah
javac yang sudah terdapat di dalam Java Development Kit (JDK).
javac <nama-program>
Perintah diatas akan menghasilkan file *.class , kemudian jalankanlah dengan
perintah java, dengan sintaks sebagai berikut :
java <nama-classjava>
Latihan 1. hello.java
public class hello{
public static void main (String[] args){
System.out.println("Selamat Datang di Ilmu Komputer UGM");
}
}
15. Penjelasan kode program hello.java , yaitu :
Elemen 1
public class hello{
....
}
Pendefinisian class dengan modifier public, agar dapat dikompilasi dan
dijalankan oleh Java VM. Jadi sintaks dasar yang utama untuk sebuah file
program Java adalah sintaks definisi class seperti berikut :
[modifier] [class] namaclass {
....
}
Element 2
public static void main (String[] args){
....
}
16. Kode program ini adalah bagian utama, karena bagian ini pertama kali
dijalankan.
Penjelasan :
- public : salah satu macam modifier.
- static : tipe method.
- void : menunjukkan bahwa method tidak mengembalikan
nilai atau objek.
- main : nama method utama dari program java.
- string : tipe argumen yang diterima untuk parameter dari
command java.
- args : array argumen yang bisa ditambahkan pada saat
menggunakan command java untuk menjalankan program java.
Element 3
System.out.println("Selamat Datang di Ilmu Komputer UGM");
Fungsi kode tersebut adalah menampilkan pada konsol data yang
dimasukkan sebagai parameter. Pada kode diatas, tipe datanya String yang
di inputkan sebagai parameter pada method println(). Untuk
menginputkan data karakter atau numerik sebagai String maka diawali dan
diakhiri dengan tanda “ ”.
17. Kelebihan dan Kekurangan Java
1. Kelebihan Java
a.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. Penyebabnya 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)
18. b. 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.
c. 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.
19. d. 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).
20. 2. Kekurangan Java
a. Tulis sekali, jalankan 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.
b. 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.
21. c. 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.
22. 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‘’
Tahap Kompilasi