Belajar pemrograman object oriented, berarti harus membiasakan diri berpikir secara kelas dan objek setiap menghadapi masalah.
Contoh :
Buatlah program untuk menghitung keliling lingkaran dari masukan jari-jarinya !
Masalah tersebut bila disajikan dengan pendekatan kelas dan objek, harus direvisi sebagai berikut :
Buatlah kelas lingkaran yang memiliki tanggungjawab mengetahui jari-jarinya dan kelilingnya, lingkaran tersebut dapat melakukan aksi mengembang dan berkerut sesuai dengan panjang jari-jarinya.
SEJARAH JAVA
Java ialah sebuah platform teknologi pemrograman yang dikembangkan oleh Sun Micros
ystem. Pertama kali di-release tahun 1991 dengan nama kode Oak. Oak didesain pertama kali untuk personal digital assistance yang disebut *7 yang akan dipasarkan Sun dengan fasilitas Graphical User Interface.
Ternyata *7 tidak pernah dipasarkan dan secara kebetulan Sun membentuk suatu perusahaan yang disebut Firstperson untuk mengembangkan *7 dalam bentuk TV set-top boxes untuk televisi interaktif. Karena persaingan begitu ketat akhirnya prospek TV interaktif menurun dan akhirnya Oak tidak laku di pasaran. Akan tetapi FirstPerson dan Oak mengalami kegagalan. bermunculan para perintis internet khususnya World Wide Web seperti Netscape membuat software yang memungkinkan terjadinya koneksi antara internet dengan www. Sun akhirnya menyadari bahwa Oak memiliki kemungkinan besar untuk membuat jalur akses ke dunia web.Kemudian tahun 1995 nama kode Oak diganti menjadi Java. Sekarang, java masih dalam taraf pengembangan dan sudah mempengaruhi arah pemrogaman computer dan internet. Bahasa pemrogaman Java dirilis secara gratis di Internet dan Sun memberikan lisensi penuh terhadap implementasi Java dan segala komponennya untuk digunakan di berbagai vendor software Internet dengan harapan supaya dapat menciptakan standard pemrogaman web.
Yang memotivasi Java dibuat adalah untuk membuat sebuah bahasa pemrograman yang portable dan independent terhadap platform (platform independent). Java dapat membuat perangkat lunak yang dapat ditanamkan (embedded) pada berbagai mesin dan peralatan konsumer, seperti handphone, microwave, remote control, dan lain-lain. Hal ini kemudian Java memiliki konsep yang disebut write once run anywhere. Untuk membangun perangkat lunak menggunakan Java maka dibutuhkan Java Development Kit (JDK). JDK release pertama tahun 1996 yaitu JDK 1.1 yang diadopsi oleh Netscape.
KELEBIHAN PEMROGRAMAN OBJECT ORIENTED
- 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. Penyebanya 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) yang artinya semua aspek yang terdapat di Java adalah Objek. Java merupakan salah satu bahasa pemrograman berbasis objek secara murni. Semua tipe data diturunkan dari kelas dasar yang disebut Object. Hal ini sangat memudahkan pemrogram untuk mendesain, membuat, mengembangkan dan mengalokasi kesalahan sebuah program dengan basis Java secara cepat, tepat, mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah satu bahasa pemograman termudah, bahkan untuk fungsi fungsi yang advance seperti komunikasi antara komputer sekalipun.
- 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.
- 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.
- 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).
KEKURANGAN PEMROGRAMAN OBJECT ORIENTED
- Tulis sekali, perbaiki 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.
- 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.
- 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.
1. Product Sun Microsystem : j2se, j2me, j2ee
2. Product Borland : JBuilder
3. Product Microsoft : Visual J
Spesifikasi j2ee antara lain JDBC, JDOM (untuk XML), Remote Method Invocation, Enterprise Java Beans, Java Messaging, Java Server Pages, Java Servlet, Socket Programming, dan SQLJ.
Java/Standard Development Kit (JDK/SDK) merupakan alat-alat utama bagi programmer untuk membuat dan menjalankan java.
Development Kit dapat didownload di :
http://java.sun.com/product/JDK/index.html atau
http://java.sun.com/j2se/1.5/index.html atau
http://java.sun.com/cgi-bin/java-ports.cgi
Komponen JDK antara lain compiler(javac), interpreter(java) disebut juga java virtual machine atau java runtime environment, applet viewer(appletviewer), debugger(jdb), java class library(jcl), header dan stub generator(javah), dan yang paling penting yaitu java documentation(javadoc).
Penjelasan penggunaan komponen JDK :
1. Kompilator (javac)
Bertugas untuk melaksanakan kompilasi
*.java menjadi *.class
Syntax umum : javac nama.java
2. Interpreter (java)
Bertugas untuk menjalankan bytecode (*.class)
Syntax umum : java nama.class
3. Applet Viewer
Digunakan untuk menjalanakan applet viewer, namun sekarang sudah digantikan browser.
Syntax umum : appletviewer nama.html
4. Java Debugger
Bertugas untuk melakukan debugging aplikasi java. Syntax umum : jdb option
5. Java Class File Diassembler (javap)
Bertugas membuat daftar method dan attribute public dari suatu kelas.
Syntax : javap namaKelas
6. Java Header and Stub Generator
Bertugas menerjemahkan bahasa yang ditulis dalam bahasa java menjadi bahasa C.
Syntax umum : javah namaKelas
7. Java Documentation Generator
Menampilkan pustaka kelas, interface, constructor, dan method standard yang telah dibuat vendor.
Dari hasil instalasi, dokumentasi ini dapat dilihat di pada C:\java\docs\api\index.html atau
C:\Program Files\NetBeans3.6\docs\junit\index.html
8. Source Code Java API
Source code ini dapat diperoleh dari file src.zip.
Untuk pemrogram pemula lingkungan pemrograman java dapat diringkas menjadi :
1. Editing source code menggunakan editor teks.
2. Compiling menggunakan keyword javac melalui command promp (dapat juga dari editor teks).
3. Executing menggunakan :
a. Keyword java melalui command prompt (dapat juga dari editor teks)
b. Browser atau applerviewer untuk applet.
Token
Token adalah elemen terkecil di program yang masih memiliki arti. Ada 5 token dalam bahasa java yaitu identifier, keyword, literal dan tipe data, operator, serta separator.
Identifier
Identifier adalah token yang merepresentasikan nama sesuatu. Sesuatu tersebut adalah variabel, atau konstanta, atau attribute, atau method, atau kelas, atau package, atau interface, atau nama file, dan lain-lain.
Keyword
Kata kunci digunakan untuk suatu tujuan tertentu. Ada 51 keyword dalam java yaitu :
abstract continue for new switch
boolean default goto null synchronized
break do if package this
byte double implements private threadsafe
byvalue else import protected throw
case extends instanceof public throws
catch false int return transient
car final interface short true
class finally long static try
const float native super void
while
Literal dan Tipe Data Primitif
Literal adalah nilai variabel/attribute atau nilai konstanta atau nilai objek data. Ada tiga besaran literal dalam java yaitu angka, karakter, dan string.
Angka terdiri dari byte, short, int, long, float, double, dan boolean (dianggap angka true = 1 atau false = 0)
Semua variabel dan konstanta yang akan digunakan harus dipesan terlebih dahulu dalam deklarasi.
Bentuk umum :
TipeData namaVar = ungkapan_atau_nilai;
TipeData namaVar1, namaVar2, …;
[modifier] static final TipeData NAMAKONSTANTA = nilai;
Contoh deklarasi :
double a=3, b=4;
double c = Math.sqrt(a*a+b*b);
static final PHI=3.14;
static final double CM_PER_INC = 2.54;
Berikut tabel jangkauan dan ukuran dari semua tipedata sederhana dalam java :
Tipe Data Primitif | Jangkauan | Ukuran (bit) |
byte | -128 s/d 127 | 8 |
short | -32767 s/d 32767 | 16 |
int | -2147483648 s/d 2147483647 | 32 |
long | -9223372036854775808 s/d 9223372036854775807 | 64 |
char | sebuah Unicode | 16 |
float | 3.4e-038 s/d 3.4e+038 | 32 |
double | 1.7e-308 s/d 1.7e+308 | 54 |
boolean | false = 0 atau true = 1 | 8 |
Operator
Operator melakukan komputasi terhadap satu/dua objek data. Operan yang dioperasikan dapat berupa literal, variabel, atau nilai yang dikirim method.
- . [] () Sekaligus
- ++var, --var, ~, instanceof preincrement, predecrement, unary, instance dari kelas …
- (type) (casting)
- ! Not
- *, /, % perkalian, pembagian, modulus
- +, - penjumlahan, pengurangn
- <<, >>, >>> geser untuk bil biner
- <, >, <=, >= pembandingan
- ==, != kesamaan, ketidaksamaan
- & and
- ^ exclusive or
- | unconditional or
- && conditional and
- || conditional or
- ? : shorthand untuk if..then…else…
- =, +=, -=, *=, /=, %=, ^= operator penugasan
- &=, |=, <<=, >>=, >>>= operator penugasan
- var++, var-- postincrement, postdecrement
Separator
Separator menginformasikan ke compiler java mengenai adanya kelompok kode program.
Berikut adalah daftar separator di java :
Notasi Nama Deskripsi
(…) kurung mengelompokkan parameter method.
{…} kurung kurawal mengelompokkan nilai-nilai suatu array, mendefinisikan blok kode kelas
ataupun kode method.
[…] kurung siku mendeklarasikan tipe array
: titik koma mengakhiri pernyataan, merangkai pernyataan-pernyataan di dalam for.
, koma memisahkan identifier-identifier di bagian deklarsi variable.
. titik memisahkan nama-nama package, memisahkan kelas dari objek, dan objek dari method.
Keyword Break, Continue, dan Return
Kelompok keyword ini pada prinsipnya merupakan kendali jump (variasi lain dari goto), sehingga berakibat pengabaian sisa instruksi.
Penggunaan Keyword Break
Ada dua penggunaan keyword break, yaitu untuk keluar dari kendali percabangan switch, dan untuk keluar dari kendali perulangan.
Dengan keyword ini berarti percabangan/perulangan akan diakhiri, kemudian eksekusi dilanjutkan ke pernyataan setelah blok percabangan/perulangan tersebut.
Contoh :
public class ContohBreak {
public static void main(String args[]) {
int i = 0;
do {
i++;
System.out.println(i);
if (i==5) break;
} while (i <= 9);
}
}
Penggunaan Keyword Continue
Penggunaan keyword ini untuk segera lompat ke perulangan berikutnya. Pernyataan-pernyataan setelah keyword continue dalam blok perulangan saat itu berarti diabaikan.
Contoh :
public class contohContinue {
public static void main(String args[]) {
int i=0;
do {
i++;
if (i==3) continue;
System.out.println(”iterasi ke : “+i);
if (i==5) break;
} while(i <= 9);
}
}
Penggunaan Keyword Return
Keyword ini digunakan untuk keluar dari suatu method, pernyataan-pernyataan setelah keyword ini dan masih dalam blok method tersebut, berarti diabaikan, kemudian eksekusi dilanjutkan ke pernyataan setelah blok method tersebut.
Contoh program :
int abs(int x) {
if (x >= 0)
return x;
else
return(-x)
…
}
}
0 comments:
Post a Comment