network programming 2 - dasar pemrograman java

Post on 30-Jun-2015

3.198 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Ridwan MontezariRidwan Montezarimontezari@gmail.com

DasarDasarPemrograman Java

Sejarah JavaProyek penelitian Sun Microsystem bernama Green padatahun 1991.

Oleh James Gosling diberi nama Oak.

Nama Oak diganti menjadi Java dan diperkenalkan olehSun Microsystem pada tahun 1995Sun Microsystem pada tahun 1995.

Karakteristik JavaSimple

Merupakan pemodelan dari bahasa C++ dengan memperbaiki beberapa karakteristikdari C++ seperti penambahan fungsionalitas dan pengurangan kompleksitas(menghilangkan multiple inheritance).

fMultiplatformBahasa Java dapat diterjemahkan oleh java interpreter pada berbagai macam sistemoperasi (linux, windows, dll) .

Object OrientedBahasa Java membagi program menjadi objek‐objek yang kemudian memodelkan sifat dan tingkah laku masing‐masing objek dan selanjutnya mengatur interaksi antar objek.

MultithreadedThread adalah proses yang dapat dikerjakan oleh suatu program dalam suatu waktu sehingga dapat mengerjakan beberapa proses dengan waktu yang hampir bersamaan.

DistributedJ dib t t k b t lik i t di t ib i l bih d h d t diJava dibuat untuk membuat aplikasi terdistribusi lebih mudah dengan tersedianyaNetworking Library yang terintegrasi pada Java.

Perkembangan JavaSaat ini Sun Microsystem membagi menjadi 4 jenis edisi :

Java Card Digunakan pada peralatan elektronik yang memiliki memori sangat terbatas. Exp : Smart Card.

( d )J2ME (Java 2 Micro Edition)Digunakan untuk penerapan pada peralatan mobile device. Exp : Handphone, Pocket PC, PDA.

J2SE (Java 2 Standard Edition)Digunakan untuk aplikasi aplikasi dekstop dan applet (aplikasi java yang dapat dijalankan diDigunakan untuk aplikasi‐aplikasi dekstop dan applet (aplikasi java yang dapat dijalankan dibrowser web).

J2EE (Java 2 Enterprise Edition)Digunakan untuk aplikasi skala besar (Enterprise) , aplikasi server dan aplikasi terdistribusi.

Setiap edisi java terdiri dari 2 komponen utama :Setiap edisi java terdiri dari 2 komponen utama :Java Application Programming Interface (Java API).

Terdiri dari kumpulan library yang digunakan untuk keperluan pemrograman.Java Run Time Environment (JRE).

Linkungan yang membuat aplikasi java dapat berjalan Salah satu komponen terpenting JRELinkungan yang membuat aplikasi java dapat berjalan. Salah satu komponen terpenting JRE adalah Java Virtual Machine (JVM).

Fase Kompilasi dan Eksekusi

Java Virtual Machine (JVM)JVM menyediakan spesifikasi hardware dan platform dimanakompilasi kode Java terjadi. Spesifikasi inilah yang membuat aplikasi berbasis Java menjadi bebasdari platform manapun karena proses kompilasi diselesaikan olehdari platform manapun karena proses kompilasi diselesaikan olehJVM.Aplikasi program Java diciptakan dengan file teks berekstensi .java. Program ini dikompilasi menghasilkan satu berkas bytecodeb k t i l t l bih berekstensi .class atau lebih. Bytecode adalah serangkaian instruksi serupa instruksi kode mesin. Perbedaannya adalah kode mesin harus dijalankan pada sistemkomputer dimana kompilasi ditujukan, sementara bytecode berjalankomputer dimana kompilasi ditujukan, sementara bytecode berjalanpada java interpreter yang tersedia di semua platform sistem komputerdan sistem operasi.

Garbage CollectionPengelolaan alokasi memory untuk pencegahanMemory leaks.Tid k l h di i bj k bj k Tidak perlu menghapus sendiri objek – objek yang tidak digunakan lagi.Fasilitas ini mengurangi beban pengelolaan memoriFasilitas ini mengurangi beban pengelolaan memorioleh pemrogram dan mengurangi atau mengeliminasisumber kesalahan terbesar yang terdapat pada bahasay g p pyang memungkinkan alokasi dinamis.

Code SecurityTerimplementasi pada Java melalui penggunaan Java Runtime Environment (JRE). Java menggunakan model pengamanan 3 lapis untukJ gg p g 3 pmelindungi sistem dari untrusted Java Code :

class‐loader : menangani pemuatan kelas Java ke runtime interpreter. Proses ini menyediakan pengamanan dengan

i hk k l k l b l d i l l di k d k lmemisahkan kelas –kelas yang berasal dari local disk dengan kelas– kelas yang diambil dari jaringan. bytecode verifier : membaca bytecode sebelum dijalankan danmenjamin bytecode memenuhi aturan – aturan dasar bahasa Javamenjamin bytecode memenuhi aturan – aturan dasar bahasa Java.manajemen keamanan menangani keamanan tingkat aplikasidengan mengendalikan apakah program berhak mengakses sumberdaya seperti sistem file, port jaringan, proses eksternal dan sistemy p , p j g , pwindowing.

Java Development Kit (JDK)Merupakan seperangkat aplikasi dan library yang digunakanuntuk mengembangkan program dengan bahasa java.Komponen utama dalam pemrograman java yang didalamnyaterdapat :terdapat :

java => interpreterjavac =>compilerjavadoc => documentation generatorjavadoc => documentation generatorjdb => debuggerappletviewer => run and debug Java applets without a web browser.dll

Instalasi pada WindowsSet PATH dan JAVA_HOME pada Environment Variable

set PATH=%PATH%;<your Java\Bin directory>set JAVA_HOME=<your Java directory>

Contoh Program Java Sederhanaclass Message{

public static void main(String[] args){System.out.println("Hello World!");

}}

public static void main(String[] args)Baris kode diatas mendeklarasikan method dengan nama main. Java akan mencarimethod ini sebagai titik awal eksekusi program.public => access specifier yang menentukan visibility level.static => method main() yang dipanggil tanpa harus terlebih dahulu membuatinstance dari class Messageinstance dari class Message.void => method main() tidak mengembalikan nilai apapun setelah dieksekusi.Main => nama method.String[] args =>method main menerima variabel dengan nama args dengan tipeSt i b i t T d [] b ti k i b lString sebagai parameter. Tanda [] berarti args merupakan variabel array.

Identifier Nama yang digunakan untuk mengedintifikasikanelemen program, misalnya variabel, konstanta, namakelas dllkelas dll.Aturan :

Tidak boleh diambil dari keyword atau true false nullTidak boleh diambil dari keyword atau true, false, null.Boleh menggunakan huruf, angka, garis bawah, atautanda dolar ($).

KeywordKata yang mempunyai arti khusus sehingga tidakdapat digunakan sebagai identifier.C hContoh :

classextendsextendspublicdlldll

KomentarBaris tunggal : //Baris banyak : /* …… */Baris terdokumentasi : /** ….. */

Tipe DataTerdapat beberapa tipe data dasar atau primitif :

Numerik bulat (byte,short,long,int)Numerik pecahan (float, double)Logika (boolean)Karakter (char)Karakter (char)

Contoh:int idx = 2;int idx = 2;int hasil = idx*10;

OperatorDilakukan untuk melakukan pengolahan data

increment/decrement : ++,‐‐penambahan : +pengurangan : ‐perkalian : *perkalian : *pembagian : /perbandingan : < <= > >= == !=perbandingan : <,< ,>,> , ,!kondisi : &&, ||Assignment : = g

Operator ShorthandBertujuan untuk menyingkatkan penulisan

Operator Contoh Ekuivalen

+= i += 5 i = i+5;+ i + 5 i i+5;

‐= i ‐= 5 i = i‐5;

*= i *= 5 i = i*5;

/= i /= 5 i = i/5;

% i % i i%

Contoh

%= i %= 5 i = i%5;

Variable dan KonstantaVariabel adalah suatu nama yang digunakan untukmenyimpan suatu nilai dari tipe data tertentu. Nilainya bersifat dinamisNilainya bersifat dinamis.

int bilangan; Konstanta : variable yang nilainya tidak dapat berubahKonstanta : variable yang nilainya tidak dapat berubah(nilainya statis).

final double PI = 3.14; 3 4

Increment dan DecrementModus operasi penambahan / pengurangan 1 nilai.

Operator Nama

++var Preincrement

var++ Postincrement

‐‐var Predecrement

Contoh

var‐‐ Postdecrement

EnumerasiTipe data yang didefinisikan oleh programmer.Membuat daftar nilai‐nilai dalam jumlah terbatas.Contoh :

enum hari {senin, selasa, rabu, kamis, jumat,sabtu, minggu}minggu}

Control Flow Statementif statement (if‐then atau if‐then‐else)switch statement

If Statement

Switch Statement

Looping Statementfor statementwhile dan do‐while statement

for statement

while dan do‐while statement

CastingCasting diperlukan jika akanmemaksakan/penyesuaian dari satu tipe data ke tipedata lainnya atau dari suatu tipe objek (class) atau kedata lainnya atau dari suatu tipe objek (class) atau ketipe objek (class) lainnya

ArrayVariabel yang menyimpan sejumlah dataData yang tersimpan pada array mempunyai index.Fungsi “length” untuk mengetahui jumlah elemen pada array.Fungsi length untuk mengetahui jumlah elemen pada array.

top related