Design Pattern : Abstract Factory
Deskripsi :
Abstract Factory Pattern (AFP) merupakan salah satu jenis Creational Pattern yang merangkum sekelompok class yang memiliki tema umum. Abstract Factory mampu menampung sekelompok factory, dimana masing-masing factory memiliki “motif” khasnya. Rahasia dibalik kemampuan AFP ini terletak pada penyediaan abstraksi terhadap factory dan product yang dihasilkan. Abstract factory memberikan sekumpulan abstract method untuk menciptakan jenis product tertentu yang harus diimplementasikan oleh concrete factory. Istilah “motif” dalam paragraf-paragraf sebelumnya diartikan sebagai suatu theme atau corak khusus yang melekat pada suatu product.
Prinsip dasar dari Abstract Factory pattern adalah:1. Terdapat kelas Abstract Factory (sebuah interface), dimana Abstract Factory merupakan sebuah interface yang mendefinisikan bagaimana cara untuk, membuat objek dari Abstract Product. Intent dari Abstract Factroy adalah menciptakan family dari objek yang berkaitan tanpa harus bergantung pada concrete class-nya.2. Terdapat kelas Concrete Factory, dimana kelas ini akan mengimplementasikan semua metode pada AbstractFactory untuk membuat objek dari concrete Product.3. Terdapat kelas Abstract Product, dimana kelas ini merupakan sebuah interface untuk mendefinisikan tipe dari masing-masing objek produk.4. Terdapat kelas Product, merupakan kelas yang akan mengimplementasikan semua metode pada AbstractProduct.5. Terdapat Client, adalah kelas yang akan terhubung dengan kelas Abstrac tFactory dan Abstract Product.
Implementasi :
Step 2
buatlah concrete class yang mengimplementasikan Shape interface.
Rectangle.java
Square.java
Circle.java
Step 3
buatlah interface untuk Colors
Color.java
Step 4
buatlah concrete class yang mengimplementasikan Colors interface
Red.java
Green.java
Blue.java
Step 5
buatlah abstract class untuk mendapatkan factories untuk color dan shape objects.
AbstractFactory.java
Step 6
buatlah Factory class extend dari AbstracFactory untuk membuat object dari concrete class berdasarkan informasi yang diberikan.
ShapeFactory.java
ColorFactory.java
Step 7
buatlah Factory generator/producer class untuk mendapatkan factory dengan cara passing informasi seperti color atau shape.
FactoryProducer.java
Step 8
gunakan FactoryProducer untuk mendapatkan AbstractFactory yang merupakan syarat untuk mendapatkan factory dari concrete class dengan cara passing infromasi seperti type.
AbstractFactoryPatternDemo.java
Step 9
jalankan program dan cek outputnya
Abstract Factory Pattern (AFP) merupakan salah satu jenis Creational Pattern yang merangkum sekelompok class yang memiliki tema umum. Abstract Factory mampu menampung sekelompok factory, dimana masing-masing factory memiliki “motif” khasnya. Rahasia dibalik kemampuan AFP ini terletak pada penyediaan abstraksi terhadap factory dan product yang dihasilkan. Abstract factory memberikan sekumpulan abstract method untuk menciptakan jenis product tertentu yang harus diimplementasikan oleh concrete factory. Istilah “motif” dalam paragraf-paragraf sebelumnya diartikan sebagai suatu theme atau corak khusus yang melekat pada suatu product.
Prinsip dasar dari Abstract Factory pattern adalah:1. Terdapat kelas Abstract Factory (sebuah interface), dimana Abstract Factory merupakan sebuah interface yang mendefinisikan bagaimana cara untuk, membuat objek dari Abstract Product. Intent dari Abstract Factroy adalah menciptakan family dari objek yang berkaitan tanpa harus bergantung pada concrete class-nya.2. Terdapat kelas Concrete Factory, dimana kelas ini akan mengimplementasikan semua metode pada AbstractFactory untuk membuat objek dari concrete Product.3. Terdapat kelas Abstract Product, dimana kelas ini merupakan sebuah interface untuk mendefinisikan tipe dari masing-masing objek produk.4. Terdapat kelas Product, merupakan kelas yang akan mengimplementasikan semua metode pada AbstractProduct.5. Terdapat Client, adalah kelas yang akan terhubung dengan kelas Abstrac tFactory dan Abstract Product.
Implementasi :
Step 1
buatlah interface Shape
Shape.java
Step 2
buatlah concrete class yang mengimplementasikan Shape interface.
Rectangle.java
Square.java
Circle.java
Step 3
buatlah interface untuk Colors
Color.java
Step 4
buatlah concrete class yang mengimplementasikan Colors interface
Red.java
Green.java
Blue.java
Step 5
buatlah abstract class untuk mendapatkan factories untuk color dan shape objects.
AbstractFactory.java
Step 6
buatlah Factory class extend dari AbstracFactory untuk membuat object dari concrete class berdasarkan informasi yang diberikan.
ShapeFactory.java
ColorFactory.java
Step 7
buatlah Factory generator/producer class untuk mendapatkan factory dengan cara passing informasi seperti color atau shape.
FactoryProducer.java
Step 8
gunakan FactoryProducer untuk mendapatkan AbstractFactory yang merupakan syarat untuk mendapatkan factory dari concrete class dengan cara passing infromasi seperti type.
AbstractFactoryPatternDemo.java
Step 9
jalankan program dan cek outputnya
Design Pattern : Abstract Factory
Reviewed by Widhi Mahaputra
on
19.56
Rating:
If you're trying to burn fat then you need to get on this totally brand new personalized keto plan.
BalasHapusTo produce this service, certified nutritionists, fitness couches, and chefs have joined together to provide keto meal plans that are powerful, painless, price-efficient, and enjoyable.
Since their first launch in 2019, 1000's of individuals have already remodeled their body and health with the benefits a proper keto plan can offer.
Speaking of benefits: in this link, you'll discover 8 scientifically-confirmed ones provided by the keto plan.