pendahuluan java

36
PENDAHULUAN JAVA By Nia Saurina SST.,M.Kom PEMROGRAMAN TERSTRUKTUR

Upload: pakuna

Post on 21-Jan-2016

83 views

Category:

Documents


0 download

DESCRIPTION

PEMROGRAMAN TERSTRUKTUR. PENDAHULUAN JAVA. By Nia Saurina SST.,M.Kom. Latar Belakang. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: PENDAHULUAN JAVA

PENDAHULUAN JAVA

ByNia Saurina SST.,M.Kom

PEMROGRAMAN TERSTRUKTUR

Page 2: PENDAHULUAN JAVA

Latar Belakang•Pada 1991, sekelompok insinyur SUN dipimpin

oleh Patrick Naughton dan James Gosling ingin merancang bahasa komputer untuk perangkat konsumer seperti cable TV Box. Dikarenakan perangkat tersebut tidak memiliki banyak memori, bahasa harus berukuran kecil dan mengandung kode yang transparan. Juga karena perusahaan berbeda memilih processor yang berbeda pula, maka bahasa harus bebas dari manufaktur manapun. Proyek diberi nama kode ”Green”.

Page 3: PENDAHULUAN JAVA

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

Page 4: PENDAHULUAN JAVA

Pengenalan JAVA• Menurut definisi Sun adalah nama untuk sekumpulan

teknologi untuk membuat dan menjalankan perangkat lunak pada komputer standalone ataupun pada lingkungan jaringan.

• Java2 adalah generasi kedua dari Java platform (generasi awalnya adalah Java Development Kit)

• Java berdiri di atas sebuah mesin interpreter yang diberi nama java Virtual Machine (JVM)

• JVM inilah yang akan membaca bytecode dalam file . Class dari suatu program sebagai representasi langsung program yang berisi bahasa mesin

• Sehingga Java disebut sebahai bahasa pemrograman yang portable karena dapat dijalankan pada berbagai sistem operasi, asalkan pada sistem operasi tersebut terdapat JVM

Page 5: PENDAHULUAN JAVA

Platform Java #1 • Platform Java terdiri dari kumpulan library, JVM,

kelas-kelarisi JVM dan library s loader yang dipaket dalam sebuah lingkungan ruti Java, dan sebuah compiler, debuger dan perangkat lain yang dipaket da;am Java Development Kit (JDK)

• Agar sebuah program Java dapat dijalankan, maka file dengan ekstensi .java harus dikopilasi menjadi file bytecode

• Untuk menjalankan bytecode tersebut dibutuhkan JRE (Java Runtime Environtment) yang memungkinkan pemakai untuk menjalankan program Java, tidak untuk membuat kode baru lagi.

Page 6: PENDAHULUAN JAVA

Platform Java #2• Platform Java memiliki tiga buah :

▫ J2EE (Java2 Enterprise Edition)▫ J2ME (Java2 Micro Edition)▫ J2SE (Java2 Second Edition)

• J2EE adalah kelompok dari beberapa API Java, menyediakan kelas dasar dan API yang mendukung pengembangan dan rutin standar untuk aplikasi klien maupun server, termasuk web browser.

• J2SE dirancang untuk digunakan pada device seperti pager dan mobile phone.

Page 7: PENDAHULUAN JAVA

•Java merupakan bahasa pemrograman yang bersifat case sensitive yang berarti penulisan menggunakan huruf besar ataupun huruf kecil pada kode program dapat berarti lain, misalnya penulisan “System” akan diartikan berbeda dengan “system” oleh interpreter.

Page 8: PENDAHULUAN JAVA

Karakteristik• Sederhana, Bahasa pemrograman Java

menggunakan sintaks mirip dengan C++ namun sintaks pada Java telah banyak diperbaiki terutama menghilangkan penggunaan pointer yang rumit dan menggunakan garbage collection.

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

Page 9: PENDAHULUAN JAVA

• Dapat didistribusi dengan mudah, dengan adanya libraries networking yang terintegrasi pada Java.

• Interpreter, 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.

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

Page 10: PENDAHULUAN JAVA

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

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

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

Page 11: PENDAHULUAN JAVA

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

•Dinamis, Perubahan pada suatu class dengan menambahkan properties ataupun method dapat dilakukan tanpa menggangu program yang menggunakan class tersebut.

Page 12: PENDAHULUAN JAVA

Garbage Collection

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

Page 13: PENDAHULUAN JAVA

Keamanan Java• Java menggunakan model pengamanan 3 lapis

untuk melindungi sistem.▫class-loader yang menyediakan pengamanan dengan

memisahkan kelas– kelas yang berasal dari local disk dengan kelas–kelas yang diambil dari jaringan.

▫bytecode verifier membaca bytecode sebelum dijalankan dan menjamin bytecode memenuhi aturan–aturan dasar bahasa Java.

▫manajemen keamanan menangani keamanan tingkat aplikasi dengan mengendalikan apakah program berhak mengakses sumber daya seperti sistem file, port jaringan, proses eksternal dan sistem windowing.

Page 14: PENDAHULUAN JAVA

Code Security• Terdapat tiga bagian utama yaitu:

1. 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. bytecode verifier membaca bytecode sebelum dijalankan dan menjamin bytecode memenuhi aturan–aturan dasar bahasa Java.

3. manajemen keamanan menangani keamanan tingkat aplikasi dengan mengendalikan apakah program berhak mengakses sumber daya seperti sistem file, port jaringan, proses eksternal dan sistem windowing.

Page 15: PENDAHULUAN JAVA

• 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 programmer 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 programmer 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.

Page 16: PENDAHULUAN JAVA

Fase – fase Pemrograman 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 kompilasi berupa berkas bytecode dengan ekstensi .class. Berkas yang mengandung bytecode tersebut kemudian akan dikonversikan oleh Java

• Interpreter menjadi bahasa mesin sesuai dengan jenis dan platform yang digunakan.

Page 17: PENDAHULUAN JAVA

Ringkasan Fase dari sebuah Program Java

Page 18: PENDAHULUAN JAVA

Penanganan Kesalahan (Error)

•Sering seorang programmer setelah melakukan kompilasi mengalami perngatan adanya kesalahan pada kode program yang dibuat.

•Jangan panik, cek kembali kode program yang telah dibuat dan memperbaiki kesalahan pada kode program sesuai dengan pesan kesalahan yang muncul

•Sangat penting membaca dan mencoba mengerti pesan kesalahan yang muncul.

Page 19: PENDAHULUAN JAVA

Hello Dunia

•class hello {• public static void main (String[] args) {• system.out.printin(“Hello Dunia”)• }• }

Page 20: PENDAHULUAN JAVA

Pesan Kesalahan

•Tampilan pada JDK▫Hello.java:5: ‘;’ expected }

•Tampilan pada GCC▫HelloDunia.cpp: In Function▫‘ int main () ‘ :▫HelloDunia.cpp:7: error:▫Expected ‘;’ before “return”

•1 error

Page 21: PENDAHULUAN JAVA
Page 22: PENDAHULUAN JAVA

•Jika bingung bagian mana yang membuat sebuah kode program error saat dieksekusi, maka dapat dimanfaatkan komentar.

Page 23: PENDAHULUAN JAVA

Komentar

•Komentar merupakan bagian kode program yang tidak diekskusi oleh saat program dijalankan. Komentar dianggap penting untuk memperjelas program agar lebih mudah dimengerti dan memberikan informas-informasi dari kode program yang diperlukan.

Page 24: PENDAHULUAN JAVA

Fungsi komentar

•Memberikan informasi pembuatan kode program

•Memberikan informasi tujuan dibuatnya sebuah prosedur, fungsi atau metode

•Memberikan informasi fungsi variabel atau konstanta

•Memberikan informasi langkah-langkah jalannya program

Page 25: PENDAHULUAN JAVA
Page 26: PENDAHULUAN JAVA

Pengenalan Pustaka (Library)

•Pustaka atau Library adalah kumpulan program atau fungsi yang telah ada pada compiler atau interpreter untuk memudahkan pemrograman membuat program dan tidak perlu mengakses langsung sistem komputer untuk memprogram.

• Import java.math.*

Page 27: PENDAHULUAN JAVA

• Pustaka yang disediakan bergantung pada bahasa pemrograman yang digunakan maupun compiler atau interpreter yang digunakan, untuk mengetahui pustaka apa saja yang ada perlu dilakukan eksplorasi terhadap bahasa pemrograman yang digunakan

• Setiap pustaka menyediakan fungsi-fungsi tertentu yang dapat mendukung pemrograman, sehingga lakukan eksplorasi terlebih dahulu, jika fungsi telah ada pada pustaka kita tidak perlu lagi membuatnya sendiri, cukup menggunakan fungsi-fungsi yang ada pada pustaka.

Page 28: PENDAHULUAN JAVA

Tipe data• Tipe data adalah pengelompokan data

berdasarkan isi dan sifatnya• Biasanya data disimpan dalam sebuah variabel

yang harus dideklarasikan terlebih dahulu agar dapat dikenali oleh compiler atau interpreter.

• Variabel merupakan tempat untuk menyimpan data dengan tipe tertentu yang isinya bisa diubah-ubah sesuai dengan tipenya

• Pendeklarasiannya adalah untuk memesan tempat pada memori agar dapat digunakan untuk menyimpan sebuah nilai.

Page 29: PENDAHULUAN JAVA

•Konstanta adalah sebuah tempat untuk menyimpan sebuah nilai sesuai dengan tipe datanya.

•Perbedaan dengan variabel, konstanta hanya boleh diisi sekali, dan tidak boleh dirubah-rubah

•int cangkir = 1; // contoh deklarasi variabel

Page 30: PENDAHULUAN JAVA
Page 31: PENDAHULUAN JAVA

Algoritma di JAVA• Algoritma berarti solusi. Algoritma harus dibuat

secara runut agar komputer mengerti dan mampu mengeksekusinya.

• Contoh membuat secangkir susu panas1. Menyiapkan cangkir dan sendok2. Menyiapkan susu bubuk atau susu kental manis3. Menyiapkan gula4. Menyiapkan air panas5. Memasukkan susu bubuk atau susu kental manis ke

dalam cangkir6. Memasukkan air panas ke dalam cangkir7. Mengaduk susu panas dalam cangkir8. Susu panas siap untuk dinikmati

Page 32: PENDAHULUAN JAVA

No Bahasa Manusia Bahasa Algoritmik Keterangan1 Kondisi awal susu panas

belum siapInteger susupanas <- 0 Susu panas belum siap

2 Menyiapkan cangkir dan sendok

Integer cangkir <- 1Integer sendok <- 1

Cangkir dan sendok yang semula tidak ada menjadi ada, oleh karena itu cangkir diset dengan angka 1

3 Menyiapkan susu bubuk atau susu kental manis

Integer susu <- 1 Susu yang semula tidak ada menjadi ada, sehingga susu diset 1

4 Menyiapkan gula Integer gula <- 1 Gula yang semula tidak ada menjadi ada, sehingga gula diset 1

5 Menyiapkan air panas Integer air panas <- 1 Air panas yang semula tidak ada menjadi ada, sehingga air panas diset 1

Page 33: PENDAHULUAN JAVA

6 Memasukkan susu bubuk atau susu kental manis ke dalam cangkir

cangkir <- cangkir + susu Susu dimasukkan ke dalam cangkir sehingga dapat dianggap pada cangkir dengan isi keadaan sebelumnya ditambahkan dengan susu

7 Memasukkan gula ke dalam cangkir

cangkir <- cangkir + gula Gula dimasukkan ke dalam cangkir sehingga dapat dianggap pada cangkir dengan isi keadaan sebelumnya ditambahkan dengan gula

8 Memasukkan air panas ke dalam cangkir

cangkir <- cangkir + airpanas Air panas dimasukkan ke dalam cangkir sehingga dapat dianggap pada cangkir dengan isi keadaan sebelumnya ditambahkan dengan air panas

9 Mengaduk susu panas dalam cangkir

While gula = 1 AND susu = 1Do Cangkir < - cangkir + sendok If cangkir = 50 then gula < - 0 susu <- 0 (end if)(end while)

Selama gula dan susu belum larut maka dilakukan pengadukan, sebagai tanda berhenti jika nilai cangkir telah mencapai 50 setelah terus ditambahkan dengan sendok dalam arti diaduk, maka dianggap gula dan susu telah larut dan diset dengan 0 sehingga proses pengadukan berhenti dan susu panas selesai dibuat.

10 Susu panas siap dinikmati susupanas <-1 Susu panas siap dinikmati

Page 34: PENDAHULUAN JAVA

No Tahapan Algoritma

Keterangan

1 Deklarasi Mendeklarasikan semua variable atau pemesanan tempat untuk menyimpan data, untuk lebih jelasnya mengenai arti variable dapat dilihat pada bab dua. Integer susupanasInteger cangkirInteger sendokInteger susuInteger gulaInteger airpanas

2 Inisialisasi Merupakan tahapan mempersiapkan proses yang akan dikerjakan untuk menyelesaikan masalah misalnya mengisi nilai-nilai variable yang nantinya akan dipergunakan pada proses penyelesaian dan memerlukan adanya nilai awalsusupanas <- 0cangkir <- 1sendok <- 1susu <- 1gula <- 1airpanas <- 1

Page 35: PENDAHULUAN JAVA

3 Proses penyelesaian masalah Merupakan tahapan penyelesaian masalah untuk memenuhi tujuan sebuah algoritma dibuatcangkir <- cangkir + susucangkir <- cangkir + gulacangkir <- cangkir + airpanasWhile gula = 1 AND susu = 1 do cangkir <- cangkir + sendok If cangkir = 50 then gula <- 0 susu <- 0 (end if)(end while)

4 Finalisasi Merupakan tahapan bersih-bersih atau tahap akhir misalnya menghapus alokasi data atau mengeset variable yang butuh diset pada akhir algoritma

susupanas <- 1

Page 36: PENDAHULUAN JAVA

Terima kasih