Post on 04-Jun-2018
8/13/2019 Eksplorasi Java 08012014
1/201
EKSPLORASI BAHASA PEMROGRAMAN JAVA
Windu Gata, MKom
11|publicclass Titik extends Bentuk{12| private int x;13| private int y;14|15| public Titik(){16| }17|18| public intgetX(){19| returnx;20| }21|22| public voidsetX(intx) {23| this.x = x;24| }25|26| public intgetY(){27| returny;28| }29|30| public voidsetY(inty) {31| this.y= y;32| }
8/13/2019 Eksplorasi Java 08012014
2/201
Profile
Windu Gata, MKom
Pendidikan
S1 - Teknik Informatika, STMIK Budi Luhur
S2 - Magister Komputer, Universitas Budi Luhur
S3 - Manajemen Pendidikan, Universitas Negeri
Jakarta (On GoingLagi Desertasi Nih DoainYah)
8/13/2019 Eksplorasi Java 08012014
3/201
Karir
1996Sales Komputer 1997Operator Input Data SEAGAMES dan Junior Programmer
2001 s/d 2006Sistem Analis, Programmer, dan DBA, LKBN Antara
2001 s/d SekarangKonsultan IT dan Pengajar Lepas
2003 s/d SekarangDosen untuk mata kuliah Analisa & Perancangan,Bahasa Pemrograman, Database, dan MobileUniversitas Budi Luhur
2006 s/d 2007Team Leader IT, PT. WEB
2007 s/d 2008Team Leader, Jawasoft
2008 s/d SekarangDosen Pasca Sarjana STMIK Nusa Mandiri danUniversitas Budi Luhur untuk mata kuliah OOP, Web Engineering,Software Engineering
2008 s/d SekarangSystem Solution Manager, Marthatilaar Group
8/13/2019 Eksplorasi Java 08012014
4/201
Karya : Buku
8/13/2019 Eksplorasi Java 08012014
5/201
Bahasa Pemrograman Java
Belajar Bahasa Program Java ???????????Susah, Ribet, Kebanyakan Aturan, Bikin Pusing Aja........
Mending Nongkrong
Khayalan Tingkat Tinggi
8/13/2019 Eksplorasi Java 08012014
6/201
Bahasa Pemrograman Java
Bahasa Pemrograman Java HanyalahPerangkat Bantu Seperti BahasaPemrograman Lainnya YangDigunakan Untuk MembangunAplikasi .
Seperti Peralatan, Hanya DenganDipelajari Caranya, Lalu Gunakan.
Seni
8/13/2019 Eksplorasi Java 08012014
7/201
Bahasa Pemrograman Java
Java adalah bahasa pemrograman dan platfomkomputer yang dikeluarkan oleh Sun Microsystemstahun 1995 dan sekarang telah dimiliki oleh Oracle.Teknologi berseni yang mendukung programutilitas, permainan dan aplikasi bisnis.
Java telah digunakan lebih dari 850 juta komputerdiseluruh dunia termasuk perangkat bergerak danperangkat TV. (http://java.com)
Pemrograman Berorientasi Objek
8/13/2019 Eksplorasi Java 08012014
8/201
KenapaBahasa 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
8/13/2019 Eksplorasi Java 08012014
9/201
JAVA
8/13/2019 Eksplorasi Java 08012014
10/201
Tipe Pengembangan Java
8/13/2019 Eksplorasi Java 08012014
11/201
Tipe Data Java (Primitive)
8/13/2019 Eksplorasi Java 08012014
12/201
Arithmetic
8/13/2019 Eksplorasi Java 08012014
13/201
Kondisi
8/13/2019 Eksplorasi Java 08012014
14/201
Karakter Escape
8/13/2019 Eksplorasi Java 08012014
15/201
LOOP
8/13/2019 Eksplorasi Java 08012014
16/201
Error Exception
8/13/2019 Eksplorasi Java 08012014
17/201
Thread
8/13/2019 Eksplorasi Java 08012014
18/201
Interface Class
8/13/2019 Eksplorasi Java 08012014
19/201
Program Berorientasi Objek
8/13/2019 Eksplorasi Java 08012014
20/201
Pattern MVC (Model ViewController)
Seseorang (Aktor) masuk ke ruangan (View) gelap menekan saklar (Control) untukmenyalakan Lampu (Model)
sehingga ruangan (View) terang benderang karena sinar lampu
1. Masuk Ke Ruangan2. Menekan Saklar
3. Memberikan Listrik Ke Lampu
4. Dapatkan Cahaya5. Ruangan Terang
8/13/2019 Eksplorasi Java 08012014
21/201
Java 2 SDK
S i
8/13/2019 Eksplorasi Java 08012014
22/201
Swing
8/13/2019 Eksplorasi Java 08012014
23/201
J2EE (Enterprise Edition)
W b
8/13/2019 Eksplorasi Java 08012014
24/201
Web
8/13/2019 Eksplorasi Java 08012014
25/201
J2ME (Micro Edition)
Mobile
8/13/2019 Eksplorasi Java 08012014
26/201
Mobile
J & D t b
8/13/2019 Eksplorasi Java 08012014
27/201
Java & Database
8/13/2019 Eksplorasi Java 08012014
28/201
Mysql + Swing
P Y B ik
8/13/2019 Eksplorasi Java 08012014
29/201
Programmer Yang Baik
Anda harus mengetahui bagaimana caranya membaca Stack Trace . Saya tahu ini bukan prioritas (hanya menyedihkan), tapibeberapa 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 dapatmelayani 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, kemudianbuatlah 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 berjalanlambat. Developer yang baik dapat mengatasi profiler dan dapatkan jawaban.
Baca Spesifikasi. Sebuah keharusan setiap developer dapat membaca spesifikasi sebelum membuat program. Developer yang baikmembaca 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 mengasahkemampuan.
Buatlah Build Sript. Cara mudah mencari developer yang bagus adalah developer yang dapat membuat build script, karena diamengetahui apa yang harus dilakukan.
8/13/2019 Eksplorasi Java 08012014
30/201
Lets 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| }
8/13/2019 Eksplorasi Java 08012014
31/201
Hello World
B
C
D E
A
8/13/2019 Eksplorasi Java 08012014
32/201
A. Project
Aplikasi yang akan kita buatsudah dinamakan sebagaiProject HelloWorld yang
ditempatkan secara default padaMyDocument\NetBeansProject\HelloWorld (windows). Di dalamprojek inilah kita akan
memasukkan source programJava.
8/13/2019 Eksplorasi Java 08012014
33/201
B. Package
Java package (Paket Java)merupakan sebuah mekanismeuntuk mengorganisasikan kelasdengan kata lain Paket Java
adalah modul java. Dalamsebuah sistem operasi kitamengenal package dengansebutan direktori atau path.
Dalam penulisannya paket javadituliskan dalam huruf kecil.
8/13/2019 Eksplorasi Java 08012014
34/201
C. Class
Penamaan file dari sebuah file java, padacontoh kasus ini adalah HelloWorld.java. PadaGambar C menunjukkan nama class, dalampemrograman Java apabila class tersebutmempunyai sifat public , maka nama classharus sama dengan nama file
8/13/2019 Eksplorasi Java 08012014
35/201
D. Main
Apabila program java akan dijalankan, makadibutuhkan method static main
8/13/2019 Eksplorasi Java 08012014
36/201
Tampilan Teks
Menampilkanteks padakomputer
Click Kanan
8/13/2019 Eksplorasi Java 08012014
37/201
Clean And Build
Clean : Menghapus Semua Kompalasi Class
Build : Melakukan kompilasi Class
Building Jar : Membentuk Executable File Jar(Java Archieve)
8/13/2019 Eksplorasi Java 08012014
38/201
Run Command
A ith ti
8/13/2019 Eksplorasi Java 08012014
39/201
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| }
A ith ti
8/13/2019 Eksplorasi Java 08012014
40/201
Arithmetic
A ith ti
8/13/2019 Eksplorasi Java 08012014
41/201
Arithmetic
Obj t A ith ti
8/13/2019 Eksplorasi Java 08012014
42/201
Object Arithmetic
Obj t A ith ti D M th d St ti
8/13/2019 Eksplorasi Java 08012014
43/201
Object Arithmetic Dengan Method Static
Kondisi
8/13/2019 Eksplorasi Java 08012014
44/201
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| }
Kondisi
8/13/2019 Eksplorasi Java 08012014
45/201
KondisiA condition is an expression that can be either true or false.
IF (Model 1)
8/13/2019 Eksplorasi Java 08012014
46/201
IF (Model 1)
IF (model 2)
8/13/2019 Eksplorasi Java 08012014
47/201
IF (model 2)
Escape Karakter
8/13/2019 Eksplorasi Java 08012014
48/201
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
8/13/2019 Eksplorasi Java 08012014
49/201
Karakter Escape
Karakter Escape
8/13/2019 Eksplorasi Java 08012014
50/201
Karakter Escape
Loop / Perulangan
8/13/2019 Eksplorasi Java 08012014
51/201
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
8/13/2019 Eksplorasi Java 08012014
52/201
LOOP
Repeti t ion Statements in Java
Java provides three repetition statements (also calledlooping statements) that enable programsto perform statements repeatedly as long as a condition(called the loop-continuationcondition) remains true. The repetition statements are thewhile, dowhile and for
statements.
Do While
8/13/2019 Eksplorasi Java 08012014
53/201
Do While
While
8/13/2019 Eksplorasi Java 08012014
54/201
While
For (Numerical 1)
8/13/2019 Eksplorasi Java 08012014
55/201
For (Numerical 1)
For (Numerical 2 : Array)
8/13/2019 Eksplorasi Java 08012014
56/201
For (Numerical 2 : Array)
For (Collection : Array)
8/13/2019 Eksplorasi Java 08012014
57/201
For (Collection : Array)
For (Collection : Model Vector Element)
8/13/2019 Eksplorasi Java 08012014
58/201
For (Collection : Model Vector Element)
For (Collection : Model Vector)
8/13/2019 Eksplorasi Java 08012014
59/201
For (Collection : Model Vector)
For (Collection : Model ListArray)
8/13/2019 Eksplorasi Java 08012014
60/201
( y)
Error Exception
8/13/2019 Eksplorasi Java 08012014
61/201
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
8/13/2019 Eksplorasi Java 08012014
62/201
p
Waktu paling ideal untuk mendeteksi adanya kesalahan padaprogram (error) adalah saat kompilasi program. Namun tidaksemua kesalahan program dapat dideteksi pada saat itu,kesalahan justru terlihat program dijalankan atau digunakan.
Sebagai contoh, untuk program yang dibuat pada saat mesin
cetak atauprinter sedang on, program dapat melakukanpencetakan dengan baik saat kondisi itu. Namun apabila mesincetak sedang dalam posisi off, maka program tidak dapatmelakukan pencetakan, kemudian mengirimkan sinyalkesalahan.
Tangkap Sinyal Atau Dilewati
Error Exception
8/13/2019 Eksplorasi Java 08012014
63/201
p
Error Exception - Rethrowing
8/13/2019 Eksplorasi Java 08012014
64/201
p g
Error Exception - Finally
8/13/2019 Eksplorasi Java 08012014
65/201
p y
Thread
8/13/2019 Eksplorasi Java 08012014
66/201
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
8/13/2019 Eksplorasi Java 08012014
67/201
Thread - Single
8/13/2019 Eksplorasi Java 08012014
68/201
Pada pemrograman yang terstruktur, pengembang program melakukanpemanggilan modul secara berurutan. Maksudnya adalah jika ada ada tiga
modul, yaitu modul A, modul B, dan modul C maka modul utama akanmemanggil sesuai urutannya.
Modul utama memanggil modul A kemudian memanggil modul B, lalumemanggil modul C, yang berarti setelah modul A selesai diproses, makamodul B akan diproses kemudian baru modul C.
Dengan kata lain modul B tidak akan diproses apabila modul A belum habisdiproses. Begitu pula modul C, modul tersebut tidak akan diproses apabilamodul A dan B belum diproses.
8/13/2019 Eksplorasi Java 08012014
69/201
Thread - Multi
8/13/2019 Eksplorasi Java 08012014
70/201
Jika ada modul A, modul B dan modul C yang dipanggil oleh main, makaproses yang terjadi adalah modul A akan diproses, kemudian tanpamenunggu proses modul A selesai, modul B dapat diproses, begitu puladengan modul C, tanpa menunggu proses modul A dan B selesai, modul Csudah dapat diproses.
Thread - Multi
8/13/2019 Eksplorasi Java 08012014
71/201
Satu atau beberapa modul yang dijalankansecara bersamaan (multiproses), dimanamasing-masing modul tersebut dijalankan padajalur masing-masing
Masing modul menjalankan kode atau scriptprogram secara berurutan
Multithread sering pula disebut dengan
multiproses atau multitasking pada sistemoperasi.
ThreadMulti
8/13/2019 Eksplorasi Java 08012014
72/201
ThreadMulti (Priority)
8/13/2019 Eksplorasi Java 08012014
73/201
MIN_PRIORITY = 1,NORM_PRIORITY=5, MAX_PRIORITY=10
Thread - Inconsistent state
8/13/2019 Eksplorasi Java 08012014
74/201
Apabila objek account tersebut tidakmenggunakan synchronized, maka akan
terjadi inconsistent state
ThreadClass Account
8/13/2019 Eksplorasi Java 08012014
75/201
Thread - Bentrok
8/13/2019 Eksplorasi Java 08012014
76/201
Thread - Solusi
8/13/2019 Eksplorasi Java 08012014
77/201
Interface Class
8/13/2019 Eksplorasi Java 08012014
78/201
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 Classf
8/13/2019 Eksplorasi Java 08012014
79/201
Interface merupakan pedoman standarisasi dari perintah yang harus dipatuhi olehClass. Penggunaan Interface dengan cara menggunakan Implements pada Class
Setiap Boneka HarusDiberikan Tali Agar DapatDimainkan Oleh Pemain
Interface Class (TaliInt.java)
8/13/2019 Eksplorasi Java 08012014
80/201
BonekaLaki Implements TaliInt
8/13/2019 Eksplorasi Java 08012014
81/201
BonekaPerempuan Implements TaliInt
8/13/2019 Eksplorasi Java 08012014
82/201
Lets Rock Interface
8/13/2019 Eksplorasi Java 08012014
83/201
Object Oriented Program
8/13/2019 Eksplorasi Java 08012014
84/201
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
8/13/2019 Eksplorasi Java 08012014
85/201
Kelas Mobil
8/13/2019 Eksplorasi Java 08012014
86/201
Progam Berorientasi Objek Kata Object dan Oriented dikenalkan di MIT (Massachusetts Institute
8/13/2019 Eksplorasi Java 08012014
87/201
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 pemrogramanSIMULA I yang dikembangkan oleh Ole-Johan Dahl dan Krsten Nygaarddari Norwegian Computing Centre di Oslo
Bahasa pemrograman SIMULA 67 menjadi inspirasi para pengembangbahasa pemrograman seperti Smalltalk (XEROX PARC), LISP .(CLOS),Object Pascal, dan C++
Bahasa pemrograman OOP semakin berkembang dan mempengaruhibahasa 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 yangberparadigma objek seperti MS .Net dan java dari Sun Microsystem(sekarang telah diakusisi oleh Oracle).
Tujuan OOP
8/13/2019 Eksplorasi Java 08012014
88/201
REUSABLE
Objek Bangun Datar dan RuangOBJECT
8/13/2019 Eksplorasi Java 08012014
89/201
Objek Bangun Datar dan RuangCLASS DIAGRAM
8/13/2019 Eksplorasi Java 08012014
90/201
Objek Bangun Datar dan Ruang
8/13/2019 Eksplorasi Java 08012014
91/201
Objek
8/13/2019 Eksplorasi Java 08012014
92/201
Objek
8/13/2019 Eksplorasi Java 08012014
93/201
Transformasi Objek Ke Kelas (Bentuk)
8/13/2019 Eksplorasi Java 08012014
94/201
Transformasi Objek Ke Kelas (Titik)
8/13/2019 Eksplorasi Java 08012014
95/201
Transformasi Objek Ke Kelas (Persegi Panjang)
8/13/2019 Eksplorasi Java 08012014
96/201
Transformasi Objek Ke Kelas (Balok)
8/13/2019 Eksplorasi Java 08012014
97/201
Objek - InstanceIn object-oriented programming, an instance variableis a variabledefined in a class(i.e. a member variable), for which each objectof the class has a separate copy, orinstance An instance variable is similar to and contrasts with a class variable
http://en.wikipedia.org/wiki/Object-oriented_programminghttp://en.wikipedia.org/wiki/Variable_(programming)http://en.wikipedia.org/wiki/Member_variablehttp://en.wikipedia.org/wiki/Object_(computer_science)http://en.wikipedia.org/wiki/Class_variablehttp://en.wikipedia.org/wiki/Class_variablehttp://en.wikipedia.org/wiki/Object_(computer_science)http://en.wikipedia.org/wiki/Member_variablehttp://en.wikipedia.org/wiki/Variable_(programming)http://en.wikipedia.org/wiki/Object-oriented_programminghttp://en.wikipedia.org/wiki/Object-oriented_programminghttp://en.wikipedia.org/wiki/Object-oriented_programming8/13/2019 Eksplorasi Java 08012014
98/201
Instance (variable) pp terbentuk dari konstruktorPersegipanjang() yang menggunakan konsep kelasPersegipanjang
instance. An instance variable is similar to and contrasts with a class variable.
Objek Message Passing
http://en.wikipedia.org/wiki/Class_variablehttp://en.wikipedia.org/wiki/Class_variable8/13/2019 Eksplorasi Java 08012014
99/201
Objek - Polimorphisme
8/13/2019 Eksplorasi Java 08012014
100/201
Class dapat dipanggil layaknya orang tua atau induk dari kelas tersebut.
Objek - Enkapsulasi
S t k t d i i bl d
8/13/2019 Eksplorasi Java 08012014
101/201
Satu kesatuan dari variable dan
method yang terdapat pada objek.Dimana variable atau method yangdidalamnya dapat dispesifikasin ijinpenggunaannya.
Private : variable atau method hanya dapatdiakses oleh objek itu sendiri.
Public: variable atau method dapatdiakses oleh objek itu sendiri dan objeklainnya.
Protected: variable dan method dapat
diakses oleh objek itu sendiri danturunannya
8/13/2019 Eksplorasi Java 08012014
102/201
MVC
8/13/2019 Eksplorasi Java 08012014
103/201
FrmPersegiPanjang berfungsi sebagai Tampilan (View) dan dapatmelakukan proses bisnis pada PersegiPanjangCtrl (Control) yangmenggunakan kelas PersegiPanjang (Model)
8/13/2019 Eksplorasi Java 08012014
104/201
Controller (PersegiPanjangCtrl)
8/13/2019 Eksplorasi Java 08012014
105/201
Controller (BalokCtrl)
8/13/2019 Eksplorasi Java 08012014
106/201
Lets Rock On Java
8/13/2019 Eksplorasi Java 08012014
107/201
Java SwingMenggunakan Objek Ruang Bangun
8/13/2019 Eksplorasi Java 08012014
108/201
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
8/13/2019 Eksplorasi Java 08012014
109/201
Teknologi Java Desktop dapat digunakan untuk membuat aplikasi pengguna yang sangat bergunaserta applet dimana aplikasi tersebut cepat, aman dan mudah. Hampir secara keseluruhanteknologi yang ada pada java SE (JRE/Java Runtime Environment) 90% merupakan sistemDesktop untuk sebagian besar Sistem Operasi. NetBeans IDE merupakan editor yangmengintegrasikan perangkat alat bantu GUI (Grafik User Interface) yang memudahkan untukmembangung aplikasi Desktop.Dalam penggunaannya Java Desktop menggunakan Swing APIyang terdiri dari komponen-komponen GUI guna membangun aplikasi berkualitas dari sisi internetmaupun intranet. Di dalam Swing kita dapat menemukan komponen-komponen sepertiJavaBeans, AWT, java2D, accessibility, dan Internationalization
Swing Framework
8/13/2019 Eksplorasi Java 08012014
110/201
Swing
8/13/2019 Eksplorasi Java 08012014
111/201
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 makapengguna dapat mengisi nilai X dan Y. Pada form FrmPersegiPanjang yang dapatmempunyail layaran tampilan untuk memasukkan nilai X, Y, lebar dan panjang dengankeluaran luas dan keliling. Sedang layar tampilan FrmBalok dapat digunakan untukmelakukan masudkan data X, Y, lebar, panjang dan tinggi dengan keluaran volume.
Swing Project - RuangBangunDekstop
8/13/2019 Eksplorasi Java 08012014
112/201
Swing Project - Library
8/13/2019 Eksplorasi Java 08012014
113/201
PASTIKAN PROJECT RuangBangun sudah di CLEAN AND BUILD
12
Swing ProjectFrmMain (JFrame)
8/13/2019 Eksplorasi Java 08012014
114/201
Swing ProjectFrmTitik (JInternalFrame)
8/13/2019 Eksplorasi Java 08012014
115/201
jlblX
Swing ProjectFrmTitik (JInternalFrame)
8/13/2019 Eksplorasi Java 08012014
116/201
FrmTitikVariable Name : FrmTitikKomponen : JFrameTitle : Form TitikForm Policy : Generate Resize CodeForm Policy ada pada kolom Code
Variable 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 ProjectFrmTitik(JInternalFrame)
8/13/2019 Eksplorasi Java 08012014
117/201
Swing ProjectFrmPersegiPanjang(JInternalFrame)
8/13/2019 Eksplorasi Java 08012014
118/201
8/13/2019 Eksplorasi Java 08012014
119/201
Swing ProjectFrmPersegiPanjang (JInternalFrame)
Kalau ada Warning (Lampu KuningDi Kiri) .. Jangan Panik, klik padalampu dan add import
8/13/2019 Eksplorasi Java 08012014
120/201
Swing ProjectFrmBalok(JInternalFrame)
8/13/2019 Eksplorasi Java 08012014
121/201
Buat Latihan Yaaaaaa
Swing ProjectFrmMain (MenghubungkanMenu Dengan JInternalFrame)
8/13/2019 Eksplorasi Java 08012014
122/201
Buat Instance Untuk Setiap Form Pada FrmMain
Swing ProjectFrmMain (MenghubungkanMenu Dengan JInternalFrame)
8/13/2019 Eksplorasi Java 08012014
123/201
8/13/2019 Eksplorasi Java 08012014
124/201
Java WebMenggunakan Objek Ruang Bangun
8/13/2019 Eksplorasi Java 08012014
125/201
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)
8/13/2019 Eksplorasi Java 08012014
126/201
Web
8/13/2019 Eksplorasi Java 08012014
127/201
J2EEJSP (Menggunakan Objek-ObjekRuangBangun)
8/13/2019 Eksplorasi Java 08012014
128/201
J2EEJSP (Menggunakan Objek-ObjekRuangBangun)Create Project
1 2 3
8/13/2019 Eksplorasi Java 08012014
129/201
45 6
7
J2EEJSP (Menggunakan Objek-ObjekRuangBangun)Titik.jsp
8/13/2019 Eksplorasi Java 08012014
130/201
J2EEJSP (Menggunakan Objek-Objek RuangBangun)PersegiPanjang.jsp
8/13/2019 Eksplorasi Java 08012014
131/201
J2EEJSP (Menggunakan Objek-Objek RuangBangun)Balok.jsp
8/13/2019 Eksplorasi Java 08012014
132/201
BUAT LATIHAN YAA
J2EEJSP (Menggunakan Objek-ObjekRuangBangun)index.jsp
8/13/2019 Eksplorasi Java 08012014
133/201
J2EEServlet (Menggunakan Objek-ObjekRuangBangun)
8/13/2019 Eksplorasi Java 08012014
134/201
J2EEServlet (Menggunakan Objek-ObjekRuangBangun)Create Project
1 2 3
8/13/2019 Eksplorasi Java 08012014
135/201
4 5 6
7
J2EEServlet (Menggunakan Objek-ObjekRuangBangun)TitikSrv.java
8/13/2019 Eksplorasi Java 08012014
136/201
J2EEServlet (Menggunakan Objek-ObjekRuangBangun)TitikSrv.java
8/13/2019 Eksplorasi Java 08012014
137/201
J2EEServlet (Menggunakan Objek-ObjekRuangBangun)PersegiPanjangSrv.java
8/13/2019 Eksplorasi Java 08012014
138/201
J2EEServlet (Menggunakan Objek-ObjekRuangBangun)PersegiPanjangSrv.java
8/13/2019 Eksplorasi Java 08012014
139/201
J2EEServlet (Menggunakan Objek-ObjekRuangBangun)BalokSrv.java
8/13/2019 Eksplorasi Java 08012014
140/201
BUAT LATIHAN YA
J2EEServlet (Menggunakan Objek-ObjekRuangBangun)index.jsp
8/13/2019 Eksplorasi Java 08012014
141/201
J2EE - MVC
8/13/2019 Eksplorasi Java 08012014
142/201
JEE mendukung pattern MVC, yaitu Model View Controller. Model yang
dimaksud adalah objek kelas yang berhubungan dengan data, Viewmerupakanlayer tampilan yang dilakukan oleh JSP dan Controlleruntuk mengontrol logikabisnis dalam web, dalam hal ini dilakukan oleh servlet.
J2EEMVCCreate Project1 2 3
8/13/2019 Eksplorasi Java 08012014
143/201
4 5 6
7
J2EEMVCTitik.jsp
8/13/2019 Eksplorasi Java 08012014
144/201
J2EEMVCTitikSrv.java
8/13/2019 Eksplorasi Java 08012014
145/201
8/13/2019 Eksplorasi Java 08012014
146/201
J2EEMVCPersegiPanjangSrv.java
8/13/2019 Eksplorasi Java 08012014
147/201
J2EEMVCBalok.jsp &BalokSrv.java
8/13/2019 Eksplorasi Java 08012014
148/201
BUAT LATIHAN YAA
J2EEMVCindex.jsp
8/13/2019 Eksplorasi Java 08012014
149/201
J2EEMVC + JSTL
8/13/2019 Eksplorasi Java 08012014
150/201
JavaServer Pages Standard Tag Library
JSTL terdiri dari tanda (tag) sederhana yang berfungsi khusus aplikasi web. JSTL telah mendukungperintah-perntah umum dan struktur seperti iterasi dan kondisi, manipulasi dokumen XML, internasionaldan SQL, serta mampu berintegrasi dengan framework.Saat ini versi JSTL terakhir adalah 1.2 dengan teknologi Unified Expression Languange (EL) yangterhubung dengan Java Server Pages (JSP) 2.1. dan diawali dengan perintah pada jsp
J2EEMVCJSTL - Titik.jsp
8/13/2019 Eksplorasi Java 08012014
151/201
J2EEMVCJSTL - PersegiPanjang.jsp
8/13/2019 Eksplorasi Java 08012014
152/201
J2EEMVCTitikSrv.java, PersegiPanjang.java,BalokSrv.java, index.jsp
8/13/2019 Eksplorasi Java 08012014
153/201
Sama Dengan Yang MVC
Java 2MEMenggunakan Objek Ruang Bangun
8/13/2019 Eksplorasi Java 08012014
154/201
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)
8/13/2019 Eksplorasi Java 08012014
155/201
Mobile
8/13/2019 Eksplorasi Java 08012014
156/201
Java + Mysql
8/13/2019 Eksplorasi Java 08012014
157/201
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
8/13/2019 Eksplorasi Java 08012014
158/201
Pengertian dari database adalah sekumpulan informasi yang terorganisirsehingga mudah diakses dan kelola. Dimana database tersebut dapat menyimpaninformasi dengan tipe data String, Numerik, Date, dan tipe data lainnya. Untuk
melakukan perintah manipulasi data, user dapat menggunakan bahasa StructureQuery Language (SQL).
Java & Database
8/13/2019 Eksplorasi Java 08012014
159/201
Berbagai macam database yang telah ada dalam dunia aplikasi adalah sepertiOracle, DB2, MySql, dan lain-lain. Pada buku ini, yang dibahas adalah bagaimanabahasa pemrograman Java dapat berinteraksi dengan database MySql dengan
menggunakan database connector (JDBC) dengan konsep Object.
Koneksi Ke Database
8/13/2019 Eksplorasi Java 08012014
160/201
Koneksi Ke Database
8/13/2019 Eksplorasi Java 08012014
161/201
Table Mahasiswa
Field Tipe Keterangan
Database Mysql : Belajar
8/13/2019 Eksplorasi Java 08012014
162/201
Nim Varchar(10) Primary KeyNama Varchar(20)Alamat Varchar(100)
CREATE TABLE `mahasiswa` (`Nim` varchar(10) NOT NULL,`Nama` varchar(25) DEFAULT NULL,
`Alamat` varchar(100) DEFAULT NULL,PRIMARY KEY (`Nim`)) ;
Koneksi.java
8/13/2019 Eksplorasi Java 08012014
163/201
Koneksi.java
8/13/2019 Eksplorasi Java 08012014
164/201
Koneksi.java
8/13/2019 Eksplorasi Java 08012014
165/201
Mahasiswa.java
8/13/2019 Eksplorasi Java 08012014
166/201
MahasiswaCtrl.Java
8/13/2019 Eksplorasi Java 08012014
167/201
MahasiswaCtrl.java
8/13/2019 Eksplorasi Java 08012014
168/201
MahasiswaCtrl.java
8/13/2019 Eksplorasi Java 08012014
169/201
MahasiwaCtrl.java
8/13/2019 Eksplorasi Java 08012014
170/201
Lets Rock JDBC (Insert & Update)
8/13/2019 Eksplorasi Java 08012014
171/201
Lets Rock JDBC (Lihat - List)
8/13/2019 Eksplorasi Java 08012014
172/201
Lets Rock JDBC (Delete)
8/13/2019 Eksplorasi Java 08012014
173/201
JPA (Java Persistance API)
The Java Persistence API, sometimes referred to as JPA, is a Java programminglanguage application programming interface specification which describes themanagement of relational data in applications using Java Platform, Standard Edition
8/13/2019 Eksplorasi Java 08012014
174/201
and Java Platform, Enterprise Edition.
The Java Persistence API originated as part of the work of the JSR 220 Expert Groupof the Java Community Process. JPA 2.0 was the work of the JSR 317 Expert Group.
Persistence in this context covers three areas:
the API itself, defined in the javax.persistence package the Java Persistence Query Language (JPQL) object/relational metadata
JPA (Java Persistance API)
8/13/2019 Eksplorasi Java 08012014
175/201
JPAPersistance Unit
8/13/2019 Eksplorasi Java 08012014
176/201
JPAPersistance Unit
8/13/2019 Eksplorasi Java 08012014
177/201
JPAPersistance Unit
8/13/2019 Eksplorasi Java 08012014
178/201
JPAPersistance Unit
8/13/2019 Eksplorasi Java 08012014
179/201
JPAPersistance Unit
8/13/2019 Eksplorasi Java 08012014
180/201
JPAPersistance Unit (XML)
8/13/2019 Eksplorasi Java 08012014
181/201
JPADATA (Model)
8/13/2019 Eksplorasi Java 08012014
182/201
JPADATA (Model)
8/13/2019 Eksplorasi Java 08012014
183/201
JPAData (ModelEntity Classes)
8/13/2019 Eksplorasi Java 08012014
184/201
JPAData (ModelEntity Classes)
8/13/2019 Eksplorasi Java 08012014
185/201
8/13/2019 Eksplorasi Java 08012014
186/201
JPAData (ModelEntity Class)
8/13/2019 Eksplorasi Java 08012014
187/201
JPAData (ModelEntity Class)
8/13/2019 Eksplorasi Java 08012014
188/201
JPAControl
8/13/2019 Eksplorasi Java 08012014
189/201
JPA - Control
8/13/2019 Eksplorasi Java 08012014
190/201
JPA - Control
8/13/2019 Eksplorasi Java 08012014
191/201
JPA - Control
8/13/2019 Eksplorasi Java 08012014
192/201
JPAControl
8/13/2019 Eksplorasi Java 08012014
193/201
JPA - Control
8/13/2019 Eksplorasi Java 08012014
194/201
JPA - Control
8/13/2019 Eksplorasi Java 08012014
195/201
JPA - Control
8/13/2019 Eksplorasi Java 08012014
196/201
Lets Rock JPA - Insert
8/13/2019 Eksplorasi Java 08012014
197/201
Lets Rock JPA - Update
8/13/2019 Eksplorasi Java 08012014
198/201
Lets Rock JPA - List
8/13/2019 Eksplorasi Java 08012014
199/201
Lets Rock JPA - Delete
8/13/2019 Eksplorasi Java 08012014
200/201
Mysql + Swing
8/13/2019 Eksplorasi Java 08012014
201/201