Belajar Abstract Factory Pattern pada Program Java
Abstract Factory adalah salah satu contoh konsep dari design pattern ,yang dapat digunakan untuk menghasilkan Factory di dalam Factory. Abstract Factory bertugas untuk mengatur dan mewariskan method-method bertipe abstract , pada factory-factory yang di gunakan untuk pembuatan object. Jadi bisa di bilang Factory Method pattern ,yang menggunakan class Minuman Factory ,di artikel belajar java sebelumnya ,merupakan bagian dari pattern ini. Bisa juga dikatakan bapaknya adalah Factory Method Pattern , nah orang tua dari bapak itu atau kakeknya yaitu Abstract Factory. Abstract Factory disini ibarat sebuah parent ,yang mempunyai child ,berupa factory-factory.
Pada artikel belajar java kali ini ,kita akan mencoba menggunakan penerapan Abstract Factory Pattern ,dengan menggunakan bahasa pemrograman Java. Berikut mari kita simak caranya :
1. Pertama buka IntelliJ IDEA ,atau Software IDE lain yang kalian gunakan , di Komputer atau Laptop kalian.
2. Sebelum kita membahas contoh code, untuk lebih jelasnya kalian bisa perhatikan contoh konsep , atau UML diagram dari Abstract Factory , seperti pada gambar dibawah:
//note file .java class terpisah pisah implementasi di dalam program javanya
Pada contoh code diatas ,kita membuat 2 interface pada file yang terpisah. Untuk di implementasikan ke Concreate Class.
Contoh Konsep UML Diagram Abstract Factory Pattern |
Setelah kita tahu konsepnya ,sekarang kita terapkan ke dalam bahasa pemrograman Java, Berikut contoh code beserta penjelasanya:
//note file .java class terpisah pisah implementasi di dalam program javanya
Contoh Code:
Makanan.java dan Minuman.java
Makanan.java dan Minuman.java |
Penjelasan:
Pada contoh code diatas ,kita membuat 2 interface pada file yang terpisah. Untuk di implementasikan ke Concreate Class.
TehHijau.java , TehTawar.java, dan TehManis.java
TehHijau.java , TehTawar.java, dan TehManis.java |
Penjelasan:
3 File terpisah diatas termasuk Concreate Class ,yang dibuat untuk mengimplementasi method dari interface Minuman.java, dengan keyword implements.
NasiGoreng.java , NasiUduk.java, dan NasiPadang.java
Penjelasan:
3 File terpisah diatas termasuk Concreate Class ,yang dibuat untuk mengimplementasi method dari interface Makanan.java, dengan keyword implements.
AbstractFactory.java
AbstractFactory.java |
Penjelasan :
Disini kita membuat abstract class AbstractFactory.java ,yang dimana disini kita tidak dapat menginstansiasi atau mengimplementasi object. Hanya dapat di implementasikan oleh turunan classnya.
JenisMinuman.java dan JenisMakanan.java
JenisMinuman.java dan JenisMakanan.java
|
Penjelasan:
Membuat variable bertipe konstant ,yang nanti akan digunakan untuk inputan data pada class Factory dan juga class Main. Disini saya membuat 2 file terpisah, bukanya menyatu pada 1 file.
MinumanFactory.java dan MakananFactory.java
Penjelasan:
Nah di class Factory pada 2 file terpisah yaitu MinumanFactory.java dan MakananFactory.java, kita mewariskan method pada abstract class AbstractFactory.java ,dengan keyword extends.
FactoryProduksi.java
FactoryProduksi.java |
Penjelasan:
Disini kita membuat method getFactory() menggunakan abstract class AbstractFactory.java , untuk mengambil object dari 2 Factory.
Main.java
Main.java |
Penjelasan:
Pada class Main.java diatas ,kita dapat membuat object dengan menggunakan Abstract Factory Pattern.
Dengan cara , seperti baris code pertama kita membuat dan menginstansiasi object dari abstract class AbstractFactory.java ,dengan memilih jenis dari 2 Factory.
Lalu di baris selanjutnya ,kita membuat dan menginstansiasi object . berdasarkan jenis makanan atau minuman.
Lalu kita memanggil method yang di implementasikan pada concreate class, untuk menampilkan output nilainya.
Output:
NasiGoreng: Harganya 10.000 ,maknyuss boss
NasiPadang: Harganya 15.000 , Mantap bro..
NasiUduk: Harganya cuman 6000, Mantap !
TehManis : Rasanya manis ,tapi segerr
TehHijau : Rasanya sangat pahit ,tapi menyehatkan
TehTawar : Rasanya hambar ,tapi cocok di sajikan saat makan
Post a Comment for "Belajar Abstract Factory Pattern pada Program Java"
Silakan berkomentar dengan baik ,jangan SPAM di komentar ini . NO BACKLINK /LINK HIDUP