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 factoryIstilah “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 Design Pattern : Abstract Factory Reviewed by Widhi Mahaputra on 19.56 Rating: 5

1 komentar:

  1. If you're trying to burn fat then you need to get on this totally brand new personalized keto plan.

    To 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.

    BalasHapus

Diberdayakan oleh Blogger.