Senin, 19 September 2016

JAVA PROGRAMMING



   A.    BAHASA PEMROGRAMAN
Bahasa pemrograman, atau sering diistilahkan juga dengan bahasa komputer atau bahasa pemrograman komputer, adalah instruksi standar untuk memerintah komputer.Bahasa pemrograman ini merupakan suatu himpunan dari aturansintaks dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.
Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman terdiri dari:
1.      Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110
2.      Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan (bah.Inggris Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode mnemonic), contohnya kode_mesin|MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.
3.      Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||, dsb.
4.      Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb. Komputer dapat mengerti bahasa manusia itu diperlukan program compiler atau interpreter.
Sebagian besar bahasa pemrograman digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang digolongkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan Bahasa Tingkat Rendah.

   B.     PENGENALAN JAVA
Java adalah bahasa pemrograman yang dapat membuat seluruh bentuk aplikasi, desktop, web, mobile dan lainnya, sebagaimana dibuat dengan menggunakan bahasa pemrograman konvensional yang lain. Bahasa Pemrograman Java ini berorientasi objek (OOP-Object Oriented Programming), dan dapat dijalankan pada berbagai platform sistem operasi.Perkembangan Java tidak hanya terfokus pada satu sistem operasi, tetapi dikembangkan untuk berbagai sistem operasi dan bersifat open source. Dengan slogannya “Write once, run anywhere”.

PENGENALAN USER INTERFACE APLIKASI
  Pengertian GUI Pada JAVA 
Graphic User Interface (GUI) adalah pemrograman dengan bahasa Java yang dibuat menggunakan aplikasi yang berbasiskan GUI.Tujuannya adalah menambahkan beberapa komponen yang tidak bisa dibuat dalam basis text.
Komponen-konponen tersebut bisa berupa tombol, gambar, dll.Tujuannyaadalah untuk memudahkan user menggunakan program yang dibuat tersebut.
Kalau dilihat pengertian tentang GUI secara umum adalah Interaksi yang dapat dilaksanakan oleh user melalui menu dan icon yang diperlihatkan dalam modus grafik.Contoh implementasi GUI-based shell ini adalah pada sistem operasi Microsoft Windows.

 Jenis-Jenis Gui :

   a)   AWT (Abstract Window Toolkit)
AWT (Abstract Window Toolkit) adalah GUI Toolkit pertama pada bahasa pemrograman Java, sayang-nya AWT ini sangat-sangat kekurangan komponen yang biasa digunakan untuk membangun sebuah aplikasi desktop secara lengkap (komponen tabel saja tidak ada ) Terlepas dari kurang-nya komponen GUI yang terdapat pada AWT (Abstract Window Toolkit), aplikasi yang dibangun menggunakan AWT (Abstract Window Toolkit) akan tampak seperti aplikasi native. Maksudnya yaitu, jika aplikasi yang dibangun menggunakan AWT (Abstract Window Toolkit) ini dijalankan pada Sistem Operasi Windows. Maka aplikasi ini akan terlihat seperti aplikasi Windows pada umum-nya, dan begitu juga jika dijalankan pada Sistem Operasi Mac ataupun GNU/Linux. Kenapa ini bisa terjadi, karena AWT (Abstract Window Toolkit) ini benar-benar memanggil native subrutin untuk menggambar setiap komponen-nya ke layar.

    b)  SWT (Standart Widget Tookit)
SWT (Standart Widget Toolkit) adalah sebuah GUI Toolkit yang dikeluaran oleh IBM sebagai alternatif dari AWT/Java Swing milik SUN Microsystem.SWT terdapat pada package java.swt.package java.swt berisis komponen-komponen GUI yang bersifat platform sistem operasi.
Tampilan dari java.swt menyesuaikan dengan sistem operasi sehingga mengakibatkan dependensi sistem. Namun performa dari SWT ini sama dengan swing. Yang membedakan antara SWT (Standart Widget Toolkit) dan AWT/Java Swing adalah SWT ini benar-benar mengakses native GUI library yang terdapat pada Sistem Operasi melalui JNI (Java Native Interface).

    c)  SWING
Java Swing adalah librari java yang digunkan untuk menciptakan Grafik User Interface (GUI). Dengan Java Swing kita dapat membuat user interface yang cross platform atau OS independent. Artinya user interface yang kita buat dapat dijalankan pada system operasi apa saja (OS yang suport Java) dengan tampilan yang relative sama. Bahkan kita dapat membuat user interface yang menyerupai Windows XP, Mac OS atau Linux tanpa tergantung dari OS yang kita gunakan. SWING, adalah salah satu bagian dari Java Foundation Classes (JFC).Pada JFC ini juga terdapat fasilitas untuk menambahkan Rich Graphic Functionality.

  C.     DASAR-DASAR PEMROGRAMAN JAVA

Ø  Tipe data dan variabel
Variabel adalah tempat atau wadah untuk menyimpan sebuah data atau nilai/value pada memori ataumerupakan container yang digunakan untuk menyimpan suatu nilai pada sebuah program dengan tipe tertentu.Pada dasarnya ada dua macam tipe variabel data dalam bahasa Java, yakni tipe primitif dan tipe reference. 

Adapun tipe primitif meliputi:

Tipe boolean 
Tipe numeric (Byte, Short, Int, Long, Char, Float, Double)
Tipe data variabel reference terdiri :
Tipe class
Tipe array
Tipe interface

Jenis standar tipe data dan interval yang digunakan dalam bahasa pemrograman Java terdiri dari:
Byte
Tipe data dengan nilai 8 bit merupakan nilai integer dan memiliki nilai minimum -128 dan nilai maksimum +127. Byte merupakan tipe data yang cocok untuk angka-angka yang kecil dan untuk menyatakan nilai array sebuah tabungan memori.

Short
Tipe data dengan nilai 16 bit merupakan nilai integer dan memiliki nilai minimum -32.768 dan nilai maksimum +32.767.sama halnya dengan byte, tipe data ini bisa digunakan untuk angka-angka yang kecil dan bisa dipakai untuk menyatakan nilai array yang cukup besar dari byte.

Int ( Integer )
 Tipe data dengan nilai 32 bit merupakan nilai integer dan memiliki nilai minimum - 2147483648 dan nilai maksimum +2147483647. Tipe data ini digunakan untuk nilai yang memiliki jangkauan besar.Dan jika kita menggunakan yang lebih besar lagi maka kita menggunakan long integer.

Long
Tipe data dengan nilai 64 bit dan memiliki nilai minimum -9.223.372.036.854.775.808 dan nilai maksimum +9.223.372.036.854.775.807.tipe data ini digunakan untuk nilai yang lebih luas jangkauannya dengan tipe data int

Float ( Floating Point Number )
Tipe data dengan nilai 32 bit, rentang nilainya nanti ada pembahasannya selanjutnya. Tipe data ini cocok digunakan pada nilai-nilai yang besar seperti halnya besaran nilai mata uang dan penggunaan tipe data ini menggunakan memory yang besar.Dan dalam kondisi ini kita menggunakan java.match.BigDecimal.

Double
Tipe data dengan nilai 64 bit, rentang nilainya nanti ada pembahasannya selanjutnya. Tipe data ini mengandung nilai decimal dan tidak cocok untuk nilai-nilai seperti mata uang.

Boolean (Bool)
Tipe data yang memiliki dua buah nilai, yaitu true atau false (benar atau salah). Untuk besaran nilai tidak bisa di tetapkan.

Ø  Operator aritmatika, logika, dan relasional

ü  Arithmetic Operator / Operator Aritmatika
Arithmetic Operator (operator aritmatika) adalah operator yang digunakan untuk melaksanakan operasi aritmatika.
Beberapa operator aritmatika antara lain:
* : untuk perkalian
+ : untuk penjumlahan
- : untuk pengurangan
/ : untuk pembagian
% : untuk sisa pembagian (modulus)Description: operatoraritmatika
ü  Logical Operator / Operator Logika / Boolean Operator
Operator Boolean atau Operator Logika adalah operator yang digunakan untuk melakukan operasi logika yaitu operator yang menghasilkan nilai TRUE (benar) atau FALSE (salah).
Bebarapa macam operator logika antara lain:
1. and : menghasilkan nilai TRUE jika kedua operand bernilai TRUE
2. or : menghasilkan nilai TRUE jika salah satu operand bernilai TRUE
3. xor : menghasilkan nilai TRUE jika salah satu operand bernilai TRUE tetapi bukan keduaduanyabernilai TRUE
4. ! : mengasilkan nilai tidak TRUE
5. && : menghasilkan nilai TRUE jika kedua operand bernilai TRUE
6. || : menghasilkan nilai TRUE jika salah satu operand bernailai TRUE
Description: operatorboolean
ü  Operator Relasi 
Operator relasi dalam Java digunakan untuk menghasilkan nilai boolean yang sering digunakan untuk mengatur alur jalannya sebuah program.

Operator
Use
Description
a > b
true if a more than b
a < b
true if a less than b
>=
a >= b
true if a more than b or a equal b
<=
a <= b
true if a less than b or a equal b
==
a == b
true if a equal b
!=
a != b
true if a not equal b




Ø  Statik dan dinamik
         Keyword Static di java digunakan untuk mengakses member baik variable ataupun method ( prosedur atau fungsi ) pada class tertentu tanpa harus membuat suatu objek dari class itu. Umumnya untuk mengakses member dari kelas lain kita harus membuat objek kelas itu tapi dengan menggunakan keyword static kita dapat langsung menggunakan member kelas lain. Keyword static bisa digunakan untuk variable ataupun method.
   D.    STRUKTUR KONTROL
                Java memiliki beberapa pernyataan control, seperti IF dan switch case. Pada bahasan ini kita akan membahas bentuk-bentuk dari pernyataan control IF. Pernyataan control IF juga di gunakan untuk menangani keputusan yang terdiri dari beberapa pilihan kondisi.

Ø  IF TUNGGAL
               Pernyataan control IF Tunggal adalah kondisi dimana pernyataan control hanya memiliki 1 buah pernyataan if.
Bentuk Umum dari pernyataan IF Tunggal adalah :
if (kondisi)
                                                 Perintah;
Penjelasan :
Jika kondisi benar, maka perintah akan di jalankan.

Ø  IF MAJEMUK
Pernyataan control IF Majemuk adalah kondisi dimana pernyataan control memiliki lebih dari 1 buah pernyataan if.

Bentuk Umum dari pernyataan IF Majemuk adalah :
if (kondisi 1)
                        perintah 1;
                if (kondisi 2)
                        perintah 2;
                …………. dst
                if (kondisi ke-n)
                        perintah ke-n;

Ø  SWITCH DAN BREAK
Bentuk dari Switch-case merupakan pernyataan yang dirancangan khusus untuk menangani pengambilan keputusan yang melibatkan sejumlah atau banyak alternatif penyelesaian. Pernyataan switch - case ini memiliki kegunaan sama seperti if – else bertingkat.

Kontruksi If-Else yang bertingkat-tingkat seringkali membingungkan pembacaan alur program.Java menyediakan intruksi Switch untuk memudahkan pembacaan alur program bercabang yang sangat banyak.meskipun Switch didesain untuk mengganti If-Else, akan tetapi Switch memiliki batasan:
Data yang diperiksa haruslah bertipe Integer (int) atau Karakter (char).
Range data yang diperiksa bernilai 0 s/d 255.
Bentuk penulisan perintah ini sebagai berikut :

switch (value)
{
case constanta 1 : statement 1;
break;

case constanta 2 : statement 2;
break;
.....
.....etc
default : statement x;
}
Break digunakan untuk menghentikan proses yang terjadi apabila perintah untuk eksekusi telah dilaksanakan. Contohnya, misalnya hasil yang kita dapatkan akan memproseskonstanta1, apabila pada case konstanta1 tidak ada break, maka statement2 pada case konstanta2 sampai case konstanta3 akan ikut di proses. Maka dari itu apabila menggunakanSwitch Case, jangan lupa untuk menulis break pada akhir statemen.

E.     STRUKTUR PERULANGAN 
Ø  FOR
Struktur for pada umumnya digunakan untuk melakukan pengulangan yang banyaknya sudah pasti atau sudah diketahui sebelumnya.Dalam pengulangan for kita harus menentukan nilai awal pengulangan dan nilai akhir pengulangan.

Pengulangan for tidak membutuhkan counter untuk menaikan variabel karena sudah disebutkan pada salah satu parameter pengulangan. Bentuk umum pengulangan for adalah sebagai berikut;

for (nilai inisialisasi awal; kondisi loop; iterasi;) {
//tubuh loop, statement yang akan diulang
}
Proses pengulangan akan terus dilakukan selama kondisi loop bernilai true. Dengan kata lain, proses pengulangan hanya akan dihentikan apabila kondisi telah bernilai false atau sudah tidak terpenuhi lagi. Pengulangan for biasanya menggunakan suatu variabel untuk mengendalikan berapa kali tubuh loop akan dieksekusi dan menentukan kapan loop akan berhenti. Variabel ini disebut juga dengan variabel kontrol.

Nilai inisialisasi awal merupakan variabel kontrol, proses inisialisasi nilai awal hanya akan dilakukan sekali saja. Iterasi berfungsi menaikan (increment) nilai variabel kontrol dan kondisi loop mengevaluasi apakah kondisi perulangan bernilai true atau false.


Ø  WHILE
            Pernyataan while adalah pernyataan atau blok pernyataan yang diulang-ulang selama kondisi -loop bernilai true. Sintaks untuk perulangan while adalah sebagai berikut:
while (kondisi-loop) {
          //tubuh loop
statement-statement;
}

Setiap kondisi loop merupakan suatu ekspresi boolean yang mengendalikan tubuh loop. Kondisi tersebut dievaluasi untuk menentukan apakah tubuh loop di eksekusi atau tidak. Jika hasil evaluasi bernilai true, maka tubuh loop dieksekusi, sedangkan jika bernilai false, maka keseluruhan loop berhenti.

Pernyataan (statement) dalam tubuh loop akan dieksekusi secara berulang.

Ø  DO WHILE
            Struktur perulangan do-while sebenarnya mirip dengan struktur perulangan while. Namun bedanya pada perulangan do-while ini, pemeriksaan kondisi-loop dilakukan pada akhir blok perulangan dan proses perulangan akan dilakukan minimal sekali meskipun ternyata kondisinya tidak terpenuhi (bernilai false).
Pernyataan di dalam (tubuh loop) akan dieksekusi terlebih dahulu.

Kemudian kondisi loop dievaluasi. Jika hasil evaluasi adalah true, maka tubuh loop dieksekusi kembali. Jika bernilai false maka pengulangan akan berhenti.


Do-while melakukan pengecekan kondisi loop setelah mengeksekusi statement yang berada pada tubuh loop. Sehingga walaupun pada pengecekan kondisi loop bernilai salah (false) statement di dalam tubuh loop tetap dikerjakan.

F. ARRAY
Array adalah sekelompok data sejenis yang disimpan ke dalam variabel dengan nama yang sama, dengan memberi indeks pada variabel untuk membedakan antara yang satu dengan yang lain.

Ø  ARRAY SATU DIMENSI
                        Array 1 Dimensi , array adalah hal yang paling penting dalam setiap bahasa pemrograman. Menurut definisi, array adalah alokasi memori statis. Ini mengalokasikan memori untuk tipe data yang sama secara berurutan. Ini berisi beberapa nilai jenis yang sama. Hal ini juga menyimpan nilai-nilai dalam memori pada ukuran tetap.
Array juga mempunyai definisi lain yaitu struktur data yang statis yang mempunyai 1 nama tetapi memiliki banyak tempat. Setiap tempat harus dibedakan, untuk membedakannya dibutuhkan penunjuk, pentunjuk dapat berupa karakter(char) atau integer. Sekali disimpan dalam penunjuk yang sama(berbentuk indeks), maka isinya tidak akan hilang kecuali indeksnya diisi oleh nilai yang lain.

Ø  ARRAY DUA DIMENSI
Merupakan sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe sama danelemen yang akan diakses melalui 2 indeks atau subskrip yaitu indeks baris dan indeks kolom.
Bentuk umum pendeklarasian:

nama_array[jumlah_elemen_baris][jumah_elemen_kolom];