Chapter# 5 Mengenal Java Tujuan : Mahasiswa m A. Java Overview • Java direlease oleh Sun Microsystem Inc tahun 1995 • Java digunakan untuk aplikasi pemrograman Applet di web browser, selanjutnya berkembang hingga aplikasi skala enterprise • 3 Edisi Java 2 Platform: – Java 2 Standard Edition (J2SE) – Java 2 Entreprise Edition (J2EE) – Java 2 Micro Edition (J2ME) B. Edisi Java • J2SE ( Standard Edition) : Java 2 Paltform menyediakan lingkungan pengembangan yang dianggap sebagai kaya fitur, stabil dan aman. Edisi ini mengukung konektivitas basis data, rancangan antarmuka pemakai, input/output, pemrograman jaringan. • J2EE (Entreprise Edition) : Edisi ini berisi paket-paket di J2SE ditambah paket yang mendukung pengembangan Entreprise Javabeans, Java Servlet, JavaServer Pages, XML dan kontrol transaksi yang flexible. • J2ME (Micro Edition) : Edisi untuk beragam consumer electronic product seperti pager, smart card, cell phone, handled PDA. Edisi ini berisi paket standar ditambah dengan paket spesifik micro edition javax.microedition.io. C. Java Mudah ? Java merupakan bahasa sederhana karena terdiri dari beberapa sintaks konsisten. Namun, Java merupakan bahasa yang berkemampuan luar biasa dengan memiliki ribuan pustaka kelas yang memberi tambahan kemampuan tentunya bukan bahasa yang sederhana dan mudah. Ragam kemampuan yang disediakan Java • Pemrograman Berorientasi Objek • Reflection dan proxy • Interface dan inner classes • Event listener model • Graphical user interface dengan swing user interface toolkit • Exception handling • Stream input/output • Multithreading • Pemrograman jaringan • dll • • D. Sekilas Pemrograman Berorientasi Objek • Paradigma gaya pemrograman beralih ke gaya pemrograman berorientasi objek setelah era terstruktur. • Segala sesuatu di Java adalah objek kecuali beberapa tipe dasar (int, float, double dan char) E. Fitur-Fitur Bahasa Java 1. Program di lingkup web browser – 2. Program di lingkup web server – – 3. 4. Applet, pemrograman ini dieksekusi di web browser dari halaman web yang memuat Java Applet. Web browser kemudian menugaskan Java interpreter (JRE) untuk mengeksekusi Java Applet yang diterima. Java Server Pages, sebagai web scripting serupa ASP, PHP dan sejenisnya. Program ditempel di halaman html. Html ini tidak langsung dikirim ke web browser tapi diolah dulu oleh web server dan hasilnya yang berupa halaman html dikirim web server ke web browser. Java Servlet, komponen ini merupakan modul di web server. JSP akan diterjemahkan menjadi servlet agar mempercepat proses eksekusi. Program Mandiri (stand-alone application), merupakan general purpose language untuk mengembangkan semua jenis program yang dapat dijalankan komputer dengan sistem operasi apapun asalkan terdapat Java interpreter di platform itu. Program aplikasi enterprise, digunakan untuk mengembangkan bahasa dalam skala enterprise. EJB (entreprise Javabeans) yang berjalan di aplikasi server Fitur-Fitur lain yang penting • • • • • • • Bahasa sederhana Bahasa orientasi objek Bahasa statically typed Bahasa yang dikompilasi Bahasa yang kecil dan sederhana Bahasa yang aman Bahasa yang independen terhadap platform Bahasa sederhana • Java tidak menyediakan fitur-fitur rumit • Dealokasi memori dilakukan oleh java bukan programmer • Fitur-fitur rumit antara lain : – – – – – – – Explicit pointer manipulation Implicit type casting Structures atau unions Operator overloading Templates Header files Multiple inheritance Bahasa orientasi objek • Model objek di java sederhana dan mudah diperluas • Tipe sederhana seperti integer, char, float tetap ada • Orientasi objek efektif untuk pengorganisasian dan pengembangan perangkat lunak • Pada objek orientasi, program java merupakan sekelompok objek yang saling berinteraksi • Kelas bertindak sebagai modul sekaligus tipe Bahasa yang dikompilasi dan aman • Program java dikompilasi menggunakan java compiler • Kompilasi akan menghasilkan file bytecode yang serupa fungsinya dengan file kode mesin • Keamanan java mengadopsi keamanan java applet. • Cara kerja applet : – Saat web browser mengetahui adanya java applet pada halaman web yang sedang diinterpterasi (web rendering) maka browser akan melakukan download terhadap applet dan keseluruhan halaman web. Applet tersebut kemudian dijalankan di komputer dimana browser berada. Hal tersebut memungkinkan aksi buruk dilakukan applet, oleh karena itu java memberikan keamanan berlapis : • Menggunakan model pengamanan tiga lapis (three-layers security model) F. Java Development Kit (JDK) • JDK berisi kumpulan kakas baris perintah (commandline tool) untuk menciptakan program java. • Komponen-komponen JDK, antara lain : – – – – – – – – Kompilator (javac) Interpreter program java (java) Applet viewer (appletviewer) Debugger (jdb) Class file disassembler (javap) Header and stub file generator (javah) Applet demo Kode sumber java API 1. Instalasi • • 2. 3. 4. Setelah dilakukan instalasi file exe, dan secara default menempati drive c:\ Selanjutnya melakukan konfigurasi pada jalur eksekusi Kompilator, javac digunakan untuk mengkompilasi file kode sumber Java menjadi kelas bytecode (dengan ekstensi .class). Syntax untuk menggunakan kompilator adalah : javac Options NamaProgram Interpreter, digunakan untuk menjalankan program bytecode Java. Interpreter bertindak sebagai tool baris perintah untuk menjalankan program Java tanpa grafis. Syntax untuk menggunakan interpreter adalah : javac Options NamaClass Arguments Applet viewer, merupakan tools yang digunakan untuk melakukan pengujian Java Applet secara minimal. Syntax untuk menggunakan Applet Viewer adalah : appletviewer Option URL 5. Java debugger, (jdb) merupakan utilitas baris perintah untuk melakukan debugging aplikasi Java. Syntak untuk menjalankan Java Debugger adalah : jdb Option 6. Java Class File Dissasembler, (javap) untuk melakukan penguraian terhadap file class. Keluaran default aktivitas dissable berisi daftar dari data public. Syntak untuk disassembler adalah : javap Options ClassNames 7. Java Header and Stub File Generator, (javah) digunakan untuk menghasilkan C header dan file kode sumber untuk implementasi metodemetode java dalam bahasa C. G. Pemrograman Java 1. Pembuatan program HelloWorldToy.java public class HelloWorldToy { public static void main (String args[]){ System.out.println (“Hello, World!”); } } Pembahasan: a. Kata kunci public disebut access modifier untuk mengendalikan ketampakan penggunaan kode ini terhadap bagian-bagian lain. b. Kata kunci class, segala sesuatu di Java berada di suatu kelas. Kita dapat memandang kelas sebagai wadah logis yang mendefinisikan perilaku aplikasi. c. Setelah class diikuti dengan nama kelas. Aturan nama kelas di Java sangat umum. Nama harus dimulai dengan huruf, setelah itu boleh dikombinasikan dengan angka. Pemrograman Java….. 2. Kelas sebagai tipe sekaligus cara pengorganisasian – Program java merupakan satu kelas yang dieksekusi. – Urutannya : saat menjalankan program jaca dengan perintah java HelloWorldToy berarti java interpreter akan memuatkan file HelloworldToy untuk menemukan fungsi/metode main(). Apabila metode main() ditemukan maka interpreter akan manjalankan program mulai titik ini. Metode main() merupakan titika awal eksekusi (entry point) seperti main() di C. Pemrograman Java….. 3. Fungsi main() public static void main (String args[]){ Fungsi main() harus ditetapkan sebagi berikut : – public berarti metode dapat dipanggil dari manapun di dalam dan diluar kelas – Static berarti adalah nama sama untuk seluruh instan dari kelas – Void berarti metode tidak mengirim apapun setelah selesainya – Sedangkan args[] adalah array objek string Pemrograman Java….. 4. Instruksi system.out.println() { System.out.println (“Hello, World!”); } Pasangan kurung kurawal merupakan awal dan akhir metode. Metod ini hanya berisi satu kalimat di dalamnya. Perintah di atas berarti kita memanggil metode println() dan melewatkan parameter string “Hello, World!” metode ini menampilkan parameter string ke konsol H. Diagram UML 1. Diagram kelas (class diagram) 2. Diagram Sekuen HelloWorldToy System.out:PrintStream Println(“Hello, World”); Diagram UML…. 3. Diagram kolaborasi 1. Println(“Hello, World”); HelloWorldToy System.out: PrintStream 3. Diagram komponen HelloWorld.java System HelloWorldToy DAFTAR PUSTAKA • Hariyanto, B. 2007, esensi-esensi bahasa pemrograman JAVA Edisi 2, Bandung, Informatika