teknik informatika universitas wijaya kusuma surabaya · sistem informasi peminjaman buku...

12
TUGAS POLA-POLA PERANCANGAN Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) Nama Kelompok : Erfan Rachmat Santosa ( 09120073 ) Untari Kristina ( 09120065 ) Teknik Informatika Universitas Wijaya Kusuma Surabaya 2012

Upload: dodieu

Post on 08-Apr-2018

226 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

TUGAS POLA-POLA PERANCANGAN

Sistem Informasi Peminjaman Buku

(Implementasi factory method pada JInternalFrame Java)

Nama Kelompok :

Erfan Rachmat Santosa ( 09120073 )

Untari Kristina ( 09120065 )

Teknik Informatika

Universitas Wijaya Kusuma Surabaya

2012

Page 2: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

BAB I

1. PENDAHULUAN

1.1 LATAR BELAKANG

Umumnya pada sebuah aplikasi dapat menghadirkan berbagai macam bentuk

form kepada penggunanya.Misalnya, spesifikasi form tersebut (contoh kami adalah

classobject) dapat diperoleh secara dinamis.

1.2 BATASAN MASALAH

Batasan masalah pada sistem informasi peminjaman buku adalah :

1. Proses Transaksi peminjaman buku tidak diimplementasikan

2. Implementasi factory method pada component Jinternal Frame

Page 3: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

BAB II

2. DASAR TEORI

2.1 DESAIN PATTERN

Design patterns adalah unsur-unsur rancangan yang sering kali muncul pada

berbagai sistem yang berbeda. Setiap kemunculan ini menguji pattern tersebut di

berbagai situasi. Semakin terujinya suatu unsur rancangan berarti semakin matangnya

unsur tersebut sehingga beberapa dapat dikatakan sebagai best practices dalam

perancangan sistem.

2.2 FACTORY METHODE

Factory Method Pattern Mendefinisikan sebuah antarmuka untuk menciptakan

objek, tetapi membiarkan subclass untuk menentukan kelas untuk instantiate dan

Mengacu pada objek yang baru dibuat melalui interface umum.

Penggunaan Umum Factory Method Pattern Sama dengan Singleton Pattern, Pattern ini

yang paling sering digunakan.

UML Class Diagram

Factory Method Pattern digunakan bila:

Kerangka kerja mendelegasikan penciptaan benda yang berasal dari superclass

umum untuk factory

Kelas factory dasar tidak tahu apa kelas beton akan diperlukan untuk membuat -

delegasi ke subclass penciptaan benda-benda konkret

Page 4: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

Pabrik subclass subclass menyadari kelas beton yang harus instantiate

Penerapan & Contoh Factory Method Pattern

- ketika kelas tidak dapat mengantisipasi jenis objek yang bertujuan untuk

menciptakan

- ketika kelas ingin subclass untuk menjadi orang-orang untuk spesifik jenis objek

yang baru dibuat.

Contoh - Dokumen lamaran.

Mempertimbangkan kerangka untuk aplikasi desktop. Aplikasi ini dimaksudkan untuk

bekerja dengan dokumen. Sebuah kerangka kerja untuk aplikasi desktop mengandung

definisi untuk operasi seperti membuka, membuat dan menyimpan dokumen. Kelas-

kelas dasar yang abstrak, bernama Aplikasi dan Dokumen, klien mereka harus membuat

subclass dari mereka dalam rangka untuk menentukan aplikasi mereka sendiri. Untuk

menghasilkan sebuah aplikasi menggambar, misalnya, mereka harus menentukan

DrawingApplication dan kelas DrawingDocument. Kelas Aplikasi mempunyai tugas

mengelola dokumen, mengambil tindakan atas permintaan klien (misalnya, ketika

pengguna memilih membuka atau menyimpan bentuk perintah menu).

Karena kelas Dokumen yang perlu instantiated adalah khusus untuk aplikasi, kelas

Application tidak tahu itu di muka, sehingga tidak tahu apa yang harus instantiate, tapi

itu tidak tahu kapan harus instantiate itu. Kerangka kerja ini perlu instantiate kelas

tertentu, tetapi hanya tahu kelas abstrak yang tidak dapat instantiated.

Factory Method Desain Pattern ini memecahkan masalah dengan menempatkan semua

informasi yang berkaitan dengan kelas yang perlu instantiated menjadi obyek dan

menggunakan mereka di luar kerangka, seperti di bawah ini

Page 5: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

2.3 ABSTRACT FACTORY METHODE

Abstract Factory Pattern merupakan salah satu jenis Creational Pattern yang

menangani mekanisme penciptaan object secara adaptif Abstract Factory menyediakan

sebuah interface untuk menciptakan keluarga yang terkait atau object yang tergantung

tanpa menentukan concrete class mereka.

UML Class Diagram

Abstract Factory Pattern digunakan ketika:

Sebuah sistem harus dikonfigurasi untuk bekerja dengan keluarga beberapa produk

Sebuah sistem harus independen dari cara kerjanya dengan produk yang dibuat.

keluarga Produk yang sama harus digunakan bersama-sama, produk dari keluarga

yang berbeda tidak digunakan bersama-sama dan kendala ini harus dipastikan.

Penciptaan perpustakaan produk yang dibutuhkan, yang relevan hanya antarmuka,

bukan implementasi (implementasi tetap tersembunyi kepada klien).

Penggunaan Umum Dari Abstract Factory Pattern:

- java.awt.Toolkit - superclass abstrak semua implementasi aktual dari Toolkit Jendela

Abstrak. Subclass dari Toolkit yang digunakan untuk mengikat berbagai komponen

untuk implementasi tertentu toolkit asli (Java AWT).

- javax.swing.LookAndFeel - pabrik ayunan abstrak untuk swithct antara tampilan dan

nuansa untuk beberapa komponen yang ditampilkan (Java Swing).

Page 6: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

- java.sql.Connection – sebuah pabrik abstrak yang membuat Laporan,

PreparedStatements, CallableStatements, ... untuk setiap rasa database.

Contoh Abstract Factory Pattern adalah contoh yang paling umum. Misalnya, kerangka

GUI harus mendukung tampilan dan nuansa beberapa tema, seperti Motif dan tampilan

Windows. Gaya masing-masing mendefinisikan penampilan yang berbeda dan perilaku

untuk setiap jenis kontrol: Tombol dan Edit box. Untuk menghindari hardociding untuk

setiap jenis kontrol kita mendefinisikan LookAndFeel kelas abstrak. Ini panggilan akan

instantiate, tergantung pada parameter konfigurasi dalam satu aplikasi dari pabrik beton:

WindowsLookAndFeel atau MotifLookAndFeel. Setiap permintaan untuk objek baru

akan didelegasikan ke pabrik beton instatiated yang akan mengembalikan kontrol dengan

aroma spesifik

Contoh UML Class Diagram Look & Feel

Page 7: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

BAB III

3. ANALISA DATA

3.1 Class Diagram

UML Class Diagram

Page 8: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

Keterangan :

- FormAbstrack : Kelas abstrak umum sebagai template dari antarmuka

- Master_Buku_Form_JFrame : Kelas yang mengimplementasikan dari FormAbstrack

- Master_Peminjam_Form_Jframe : Kelas yang mengimplementasikan dari

FormAbstrack

- FormAbstrakCreator : Kelas abstrak sebagai template dari kelas

Concrete_FormAbstrakCreator.

- Concrete_FormAbstrakCreator : Kelas yang mengimplementasikan dari

FormAbstrackCreator dan memiliki method dengan keluaran type data FormAbstrack

Page 9: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

BAB IV

4. IMPLEMENTASI

4.1 Desain

Pertama-tama menentukan bentuk abstraksi umum dari aplikasi form

public abstract class FormAbstrak extends javax.swing.JInternalFrame{

public abstract void Initialisasi();

public abstract void Load();

public abstract void Insert();

public abstract void Update();

public abstract void Delete();

}

Sebuah creator class bertanggung jawab (dengan bantuan dari concrete subclass) untuk

membuat instant dari subclass FormAbstrak. Abstraksi dari kelas creator diberikan dalam

class FormAbstrakCreator

public abstract class FormAbstrakCreator {

public abstract FormAbstrak createEntryForm(Class c)

throws Exception;

}

Kita buat contoh dengan membuat 2 kelas yang mengimplementasikan dari FormAbstrak.

Perbedaan diantara form tersebut dapat terletak pada jumlah field, button, dll.

public class Master_Buku_Form_JFrame extends FormAbstrak{

public abstract void Initialisasi(); { /* Code omitted. */ }

public void Load();{ /* Code omitted. */ }

public void Insert();{ /* Code omitted. */ }

Page 10: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

public void Update();{ /* Code omitted. */ }

public void Delete();{ /* Code omitted. */ }

}

public class Master_Peminjam_Form_Jframe extends FormAbstrak {

public abstract void Initialisasi(); { /* Code omitted. */ }

public void Load();{ /* Code omitted. */ }

public void Insert();{ /* Code omitted. */ }

public void Update();{ /* Code omitted. */ }

public void Delete();{ /* Code omitted. */ }

}

Sebuah concrete subclass dapat menciptakan segala bentuk form yang berbasis dari tipe

kelas FormAbstrak

public class Concrete_FormAbstrakCreator extends FormAbstrakCreator{

@Override

public FormAbstrak createEntryForm(Class c) throws Exception {

return (FormAbstrak) c.newInstance();

}

}

Client (User) yang akan menginstanisasi object Concrete_FormAbstrakCreator secara run

time.

Contoh pada Form Menu Pengguna dan Menu Buku.

factory_method.FormAbstrak form_pattern=null;

factory_method.FormAbstrakCreator fc=new factory_method.Concrete_FormAbstrakCreator();

form_pattern=fc.createEntryForm(factory_method.Master_Peminjam_Form_Jframe.class);

Page 11: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

4.2 Tampilan Interface Aplikasi

4.2.1 Login

4.2.2 Menu Utama

Page 12: Teknik Informatika Universitas Wijaya Kusuma Surabaya · Sistem Informasi Peminjaman Buku (Implementasi factory method pada JInternalFrame Java) ... UML Class Diagram Abstract Factory

4.2.3 Form Master Peminjam (yang menggunakan konsep factory

method)

4.2.4 Form Master Buku