+ All Categories
Home > Documents > Eksplorasi Java 05012014

Eksplorasi Java 05012014

Date post: 31-Dec-2015
Category:
Upload: windu-gata
View: 84 times
Download: 0 times
Share this document with a friend
Popular Tags:
136
EKSPLORASI BAHASA PEMROGRAMAN JAVA Windu Gata, MKom 11| public class Titik extends Bentuk{ 12| private int x; 13| private int y; 14| 15| public Titik() { 16| } 17| 18| public int getX() { 19| return x; 20| } 21| 22| public void setX(int x) { 23| this.x = x; 24| } 25| 26| public int getY() { 27| return y; 28| } 29| 30| public void setY(int y) { 31| this.y = y; 32| }
Transcript

EKSPLORASI BAHASA PEMROGRAMAN JAVA

Windu Gata, MKom

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

Profile

Windu Gata, MKom Pendidikan

S1 - Teknik Informatika, STMIK Budi Luhur S2 - Magister Komputer, Universitas Budi Luhur S3 - Manajemen Pendidikan, Universitas Negeri

Jakarta (On Going – Lagi Desertasi Nih … Doain Yah)

Karir

1996 – Sales Komputer

1997 – Operator Input Data SEAGAMES dan Junior Programmer

2001 s/d 2006 – Sistem Analis, Programmer, dan DBA, LKBN Antara

2001 s/d Sekarang – Konsultan IT dan Pengajar Lepas

2003 s/d Sekarang – Dosen untuk mata kuliah Analisa & Perancangan, Bahasa Pemrograman, Database, dan Mobile – Universitas Budi Luhur

2006 s/d 2007 – Team Leader IT, PT. WEB

2007 s/d 2008 – Team Leader, Jawasoft

2008 s/d Sekarang – Dosen Pasca Sarjana STMIK Nusa Mandiri dan Universitas Budi Luhur untuk mata kuliah OOP, Web Engineering, Software Engineering

2008 s/d Sekarang – System Solution Manager, Marthatilaar Group

Karya : Buku

Bahasa Pemrograman Java

Belajar Bahasa Program Java ???????????Susah, Ribet, Kebanyakan Aturan, Bikin Pusing Aja........

Mending Nongkrong

Khayalan Tingkat Tinggi

Bahasa Pemrograman Java

Bahasa Pemrograman Java Hanyalah Perangkat Bantu Seperti Bahasa Pemrograman Lainnya Yang Digunakan Untuk Membangun Aplikasi .

Seperti Peralatan, Hanya Dengan Dipelajari Caranya, Lalu Gunakan.

Seni

Bahasa Pemrograman Java

Java adalah bahasa pemrograman dan platfom komputer yang dikeluarkan oleh Sun Microsystems tahun 1995 dan sekarang telah dimiliki oleh Oracle. Teknologi berseni yang mendukung program utilitas, permainan dan aplikasi bisnis.

Java telah digunakan lebih dari 850 juta komputer diseluruh dunia termasuk perangkat bergerak dan perangkat TV. (http://java.com)

Pemrograman Berorientasi Objek

Kenapa Bahasa Pemrograman Java ?

Multiplatform Dapat digunakan ke semua OS Dapat digunakan untuk semua model tampilan

(Console, Desktop, Web, dan Mobile) Handal Dukungan dari Komunitas Java dan Oracle Java Is Everywhere Gratis

JAVA

Tipe Pengembangan Java

Tipe Data Java (Primitive)

Arithmetic

Kondisi

Karakter Escape

LOOP

Error Exception

Thread

Interface Class

Program Berorientasi Objek

Pattern MVC (Model View Controller)

Seseorang (Aktor) masuk ke ruangan (View) gelap menekan saklar (Control) untuk menyalakan Lampu (Model)

sehingga ruangan (View) terang benderang karena sinar lampu

1. Masuk Ke Ruangan 2. Menekan Saklar 3. Memberikan Listrik Ke Lampu

4. Dapatkan Cahaya5. Ruangan Terang

Java 2 SDK

Swing

J2EE (Enterprise Edition)

Web

J2ME (Micro Edition)

Mobile

Java & Database

Mysql + Swing

Programmer Yang Baik Anda harus mengetahui bagaimana caranya membaca Stack Trace . Saya tahu ini bukan prioritas (hanya menyedihkan), tapi beberapa developer terlihat bingung melihat

stacktrace. Walaupun bukan prioritas tapi dapat menyisihkan beberapa orang.

Mengetahui semua alat yang digunakan : IDE, editor, & Sistem Operasi. Pilihlah peralatan yang menurut anda "Kuat" dan dapat melayani anda dalam membuat program.

Mengetahui bahasa pemrograman jika anda mengungkapkannya di kode dan anda mengetahui bagaimana menerangkannya. Pelajari setiap bagian/sintak dari bahasa pemrograman. Dapatkan pengertian secara garis besar dari setiap library.

Anda harus dapat mengunduh (men-download) aplikasi 3rd Party. Dapatkan contoh kode yang dapat dikompilasi, kemudian buatlah perubahan dan mengetahui library apa yang digunakan. Kalau bisa dekompilasi programnya untuk mendapatkan source.

Harus mengerti cara mecari kesalahan (debugger)

Mengetahui bagaimana menggunakan profiler. Dalam waktu yang sama anda harus mengetahui kenapa programnya berjalan lambat. Developer yang baik dapat mengatasi profiler dan dapatkan jawaban.

Baca Spesifikasi. Sebuah keharusan setiap developer dapat membaca spesifikasi sebelum membuat program. Developer yang baik membaca spesifikas terlebih dahulu, ketika selesai buat program yang sekiranya kurang.

Bacalah kode. Menulis program itu menyenangkan, tetapi buat developer yang baik, membaca kode orang lain, dapat mengerti, serta dapat membuat kode yang lebih baik (jauh lebih menyenangkan).

Biasakan membuat program dengan baris perintah (Command Line). Ya .. GUI menyenangkan dan bagus, tetapi tidak mengasah kemampuan.

Buatlah Build Sript. Cara mudah mencari developer yang bagus adalah developer yang dapat membuat build script, karena dia mengetahui apa yang harus dilakukan.

Let’s Rock

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

Hello World

B

C

D E

A

A. Project

Aplikasi yang akan kita buat sudah dinamakan sebagai Project “HelloWorld” yang ditempatkan secara default pada MyDocument\NetBeansProject\HelloWorld (windows). Di dalam projek inilah kita akan memasukkan source program Java.

B. Package

• Java package (Paket Java) merupakan sebuah mekanisme untuk mengorganisasikan kelas dengan kata lain Paket Java adalah modul java. Dalam sebuah sistem operasi kita mengenal package dengan sebutan direktori atau path. Dalam penulisannya paket java dituliskan dalam huruf kecil.

C. Class

• Penamaan file dari sebuah file java, pada contoh kasus ini adalah HelloWorld.java. Pada Gambar C menunjukkan nama class, dalam pemrograman Java apabila class tersebut mempunyai sifat “public “, maka nama class harus sama dengan nama file

D. Main

• Apabila program java akan dijalankan, maka dibutuhkan method static main

Tampilan Teks

Menampilkan teks pada komputer

Click Kanan

Clean And Build• Clean : Menghapus Semua Kompalasi Class

• Build : Melakukan kompilasi Class

• Building Jar : Membentuk Executable File Jar (Java Archieve)

Run Command

Arithmetic

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

Arithmetic

Arithmetic

Object Arithmetic

Object Arithmetic Dengan Method Static

Kondisi

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

KondisiA condition is an expression that can be either true or false.

IF (Model 1)

IF (model 2)

Escape Karakter

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

Karakter Escape

Karakter Escape

Loop / Perulangan

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

LOOP

Repetition Statements in JavaJava provides three repetition statements (also called looping statements) that enable programsto perform statements repeatedly as long as a condition (called the loop-continuationcondition) remains true. The repetition statements are the while, do…while and forstatements.

Do While

While

For (Numerical 1)

For (Numerical 2 : Array)

For (Collection : Array)

For (Collection : Model Vector Element)

For (Collection : Model Vector)

For (Collection : Model ListArray)

Error Exception

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

Error Exception

• Waktu paling ideal untuk mendeteksi adanya kesalahan pada program (error) adalah saat kompilasi program. Namun tidak semua kesalahan program dapat dideteksi pada saat itu, kesalahan justru terlihat program dijalankan atau digunakan.

• Sebagai contoh, untuk program yang dibuat pada saat mesin cetak atau printer sedang on, program dapat melakukan pencetakan dengan baik saat kondisi itu. Namun apabila mesin cetak sedang dalam posisi off, maka program tidak dapat melakukan pencetakan, kemudian mengirimkan sinyal kesalahan.

• Tangkap Sinyal Atau Dilewati

Error Exception

Error Exception - Rethrowing

Error Exception - Finally

Thread

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

Thread

Thread - Single

• Pada pemrograman yang terstruktur, pengembang program melakukan pemanggilan modul secara berurutan. Maksudnya adalah jika ada ada tiga modul, yaitu modul A, modul B, dan modul C maka modul utama akan memanggil sesuai urutannya.

• Modul utama memanggil modul A kemudian memanggil modul B, lalu memanggil modul C, yang berarti setelah modul A selesai diproses, maka modul B akan diproses kemudian baru modul C.

• Dengan kata lain modul B tidak akan diproses apabila modul A belum habis diproses. Begitu pula modul C, modul tersebut tidak akan diproses apabila modul A dan B belum diproses.

Thread - Single

Thread - Multi

Jika ada modul A, modul B dan modul C yang dipanggil oleh main, maka proses yang terjadi adalah modul A akan diproses, kemudian tanpa menunggu proses modul A selesai, modul B dapat diproses, begitu pula dengan modul C, tanpa menunggu proses modul A dan B selesai, modul C sudah dapat diproses.

Thread - Multi

• Satu atau beberapa modul yang dijalankan secara bersamaan (multiproses), dimana masing-masing modul tersebut dijalankan pada jalur masing-masing

• Masing modul menjalankan kode atau script program secara berurutan

• Multithread sering pula disebut dengan multiproses atau multitasking pada sistem operasi.

Thread – Multi

Thread – Multi (Priority)MIN_PRIORITY = 1,NORM_PRIORITY=5, MAX_PRIORITY=10

Thread - Inconsistent state

Apabila objek account tersebut tidak menggunakan synchronized, maka akan

terjadi inconsistent state

Thread – Class Account

Thread - Bentrok

Thread - Solusi

Interface Class

Windu Gata, MKom

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

Interface ClassInterface merupakan pedoman standarisasi dari perintah yang harus dipatuhi oleh Class. Penggunaan Interface dengan cara menggunakan Implements pada Class

Setiap Boneka Harus Diberikan Tali Agar Dapat Dimainkan Oleh Pemain

Interface Class (TaliInt.java)

BonekaLaki Implements TaliInt

BonekaPerempuan Implements TaliInt

Let’s Rock Interface

Object Oriented Program

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

Program Berorientasi Objek

Kelas Mobil

Progam Berorientasi Objek Kata “Object” dan “Oriented” dikenalkan di MIT (Massachusetts

Institute of Technology) pada akhir 1950 dan awal 1960. Dalam artikel AI (Artificial Intelligence), objek terdiri dari item-item dan properti (attribut).

Pada tahun 1960, OOP ini diterapkan pada bahasa pemrograman SIMULA 67 yang merupakan pengembangan dari bahasa pemrograman SIMULA I yang dikembangkan oleh Ole-Johan Dahl dan Krsten Nygaard dari Norwegian Computing Centre di Oslo

Bahasa pemrograman SIMULA 67 menjadi inspirasi para pengembang bahasa pemrograman seperti Smalltalk (XEROX PARC), LISP .(CLOS), Object Pascal, dan C++

Bahasa pemrograman OOP semakin berkembang dan mempengaruhi bahasa pemrograman khususnya visualisasi seperti Visual Foxpro 3, Delphi, C++ dan Visual Basic, Cocoa Frameworks for MAC OS dan lain-lain

Pada saat ini sudah banyak sekali bahasa pemrograman yang berparadigma objek seperti MS .Net dan java dari Sun Microsystem (sekarang telah diakusisi oleh Oracle).

Tujuan OOP

REUSABLE

Objek Bangun Datar dan RuangOBJECT

Objek Bangun Datar dan RuangCLASS DIAGRAM

Objek Bangun Datar dan Ruang

Objek

Objek

Transformasi Objek Ke Kelas (Bentuk)

Transformasi Objek Ke Kelas (Titik)

Transformasi Objek Ke Kelas (Titik)

Transformasi Objek Ke Kelas (Persegi Panjang)

Transformasi Objek Ke Kelas (Persegi Panjang)

Transformasi Objek Ke Kelas (Persegi Panjang)

Transformasi Objek Ke Kelas (Balok)

Objek - Instance

Instance (variable) pp terbentuk dari konstruktor Persegipanjang() yang menggunakan konsep kelas Persegipanjang

In object-oriented programming, an instance variable is a variable defined in a class (i.e. a member variable), for which each object of the class has a separate copy, or instance. An instance variable is similar to and contrasts with a class variable.

Objek Message Passing

Objek - Polimorphisme

Class dapat dipanggil layaknya orang tua atau induk dari kelas tersebut.

Objek - Enkapsulasi

• Satu kesatuan dari variable dan method yang terdapat pada objek. Dimana variable atau method yang didalamnya dapat dispesifikasin ijin penggunaannya.

– Private : variable atau method hanya dapat diakses oleh objek itu sendiri.

– Public : variable atau method dapat diakses oleh objek itu sendiri dan objek lainnya.

– Protected : variable dan method dapat diakses oleh objek itu sendiri dan turunannya

Pattern MVC (Model View Controller)

Seseorang (Aktor) masuk ke ruangan (View) gelap menekan saklar (Control) untuk menyalakan Lampu (Model)

sehingga ruangan (View) terang benderang karena sinar lampu

1. Masuk Ke Ruangan 2. Menekan Saklar 3. Memberikan Listrik Ke Lampu

4. Dapatkan Cahaya5. Ruangan Terang

MVC

FrmPersegiPanjang berfungsi sebagai Tampilan (View) dan dapat melakukan proses bisnis pada PersegiPanjangCtrl (Control) yang menggunakan kelas PersegiPanjang (Model)

Controller (PersegiPanjangCtrl)

Controller (BalokCtrl)

Let’s Rock On Java

Java Swing – Menggunakan Objek Ruang Bangun

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

Java 2 SDK

Teknologi Java Desktop dapat digunakan untuk membuat aplikasi pengguna yang sangat berguna serta applet dimana aplikasi tersebut cepat, aman dan mudah. Hampir secara keseluruhan teknologi yang ada pada java SE (JRE/Java Runtime Environment) 90% merupakan sistem Desktop untuk sebagian besar Sistem Operasi. NetBeans IDE merupakan editor yang mengintegrasikan perangkat alat bantu GUI (Grafik User Interface) yang memudahkan untuk membangung aplikasi Desktop.Dalam penggunaannya Java Desktop menggunakan Swing API yang terdiri dari komponen-komponen GUI guna membangun aplikasi berkualitas dari sisi internet maupun intranet. Di dalam Swing kita dapat menemukan komponen-komponen seperti JavaBeans, AWT, java2D, accessibility, dan Internationalization

Swing Framework

Swing

Dalam kasus ini kita akan membuat 1 buah JFrame bernama FrmMain. FrmMain tersebut mempunyai menu untuk untuk membuka 3 (tiga) boundary (Form / JInternalFrame), yaitu FrmTitik, FrmPersegiPanjang, dan FrmBalok. Pada FrmTitik pada saat dibuka maka pengguna dapat mengisi nilai X dan Y. Pada form FrmPersegiPanjang yang dapat mempunyail layaran tampilan untuk memasukkan nilai X, Y, lebar dan panjang dengan keluaran luas dan keliling. Sedang layar tampilan FrmBalok dapat digunakan untuk melakukan masudkan data X, Y, lebar, panjang dan tinggi dengan keluaran volume.

Swing Project - RuangBangunDekstop

Swing Project - Library

PASTIKAN PROJECT RuangBangun sudah di CLEAN AND BUILD

12

Swing Project – FrmMain (JFrame)

Swing Project – FrmTitik (JInternalFrame)

FrmTitikVariable Name : FrmTitikKomponen : JFrameTitle : Form TitikForm Policy : Generate Resize CodeForm Policy ada pada kolom Code

jlblXVariable Name : jlblXKomponen : JLabelText : Nilai X

jlblYVariable Name : jlblYKomponen : JLabelText : Nilai Y

jtxtXVariable Name : jtxtXKomponen : JTextFieldText : 0

jtxtYVariable Name : jtxtYKomponen : JTextFieldText : 0

jbtnPosisiVariable Name : jbtnPosisiKomponen : JbuttonText : Posisi

Swing Project – FrmTitik (JInternalFrame)

Swing Project – FrmTitik (JInternalFrame)

Swing Project – FrmPersegiPanjang (JInternalFrame)

Swing Project – FrmPersegiPanjang (JInternalFrame)

FrmPersegiPanjangVariable Name : FrmPersegiPanjangKomponen : JFrameTitle : Form Persegi PanjangForm Policy : Generate Resize CodeForm Policy ada pada kolom Code

jlblPanjangVariable Name : jlblPanjangKomponen : JLabelText : Nilai Panjang

jtxtPanjangVariable Name : jtxtPanjangKomponen : JTextFieldText : 0

jlblLebarVariable Name : jlblLebarKomponen : JLabelText : Nilai Lebar

jtxtLebarVariable Name : jtxtLebarKomponen : JTextFieldText : 0

jbtnHitungVariable Name : jbtnHitungKomponen : JButtonText : Hitung

jlblLuasVariable Name : jlblLuasKomponen : JLabelText : Luas

jlblKelilingVariable Name : jlblKelilingKomponen : JLabelText : Kelliling

jtxtLuasVariable Name : jtxtLuasKomponen : JTextFieldText : 0Editable : false

jtxtKelilingVariable Name : jtxtKelilingKomponen : JTextFieldText : 0Editable : false

Swing Project – FrmPersegiPanjang (JInternalFrame)

Kalau ada Warning (Lampu Kuning Di Kiri) .. Jangan Panik, klik pada lampu dan add import

Swing Project – FrmBalok (JInternalFrame)

Buat Latihan Yaaaaaa

Swing Project – FrmMain (Menghubungkan Menu Dengan JInternalFrame)

Buat Instance Untuk Setiap Form Pada FrmMain

Swing Project – FrmMain (Menghubungkan Menu Dengan JInternalFrame)

Let’s Rock Swing

Java Web – Menggunakan Objek Ruang Bangun

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

J2EE (Enterprise Edition)

Web

Java 2ME – Menggunakan Objek Ruang Bangun

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

J2ME (Micro Edition)

Mobile

Java + Mysql

11| public class Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik() {16| }17|18| public int getX() {19| return x;20| }21|22| public void setX(int x) {23| this.x = x;24| }25|26| public int getY() {27| return y;28| }29|30| public void setY(int y) {31| this.y = y;32| }

Java & Database

Mysql + Swing


Recommended