Design Pattern 1: Factory Pattern (part 1)

Ada puluhan pattern yang bisa kita gunakan dalam pemrograman. Namun berdasarkan buku yang dikarang oleh Gamma et al, yang populer digunakan ada 23 pattern. Mari kita lihat pattern yang pertama (bagi kita) yang bernama Factory Pattern.

Diasumsikan kita memiliki kelas-2 yang bernama Building, Room, Door dan Wall dengan berbagai atribut dan method-nya. Mari kita buat gedung-nya menggunakan kode Java berikut:

Code 1:

public class BuildingProject
{
static int North = 1;
static int South = 2;
static int East = 3;
static int West = 4;
// create the building
Public Building createBuilding()
{
Building bld = new Building();
Room r1 = new Room();
Room r2 = new Room();
Door door = new Door(r1,r2);
bld.addRoom(r1);
bld.addRoom(r2);
r1.setSide(this.North, new Wall());
r1.setSide(this.South, new Wall());
r1.setSide(this.East, door);
r1.setSide(this.West, new Wall());
r2.setSide(this.North, new Wall());
r2.setSide(this.South, new Wall());
r2.setSide(this.East, new Wall());
r2.setSide(this.West, door);
}
}

Apa yang salah dengan kode di atas? TIDAK ADA. Kita lihat disana kita punya Door. Yap…itu pintu yang menghubungkan dua buah Room r1 dan r2. Sebulan kemudian kita perlu membuat pintu rahasia SecretDoor atau HiddenRoom. Apa yang biasa kita lakukan?

~ by admin on May 17, 2008.

One Response to “Design Pattern 1: Factory Pattern (part 1)”

  1. […] Building-nya. Kita bisa mengganti method createBuilding() yang ada di dalam kelas BuildingProject (lihat Factory Pattern part 1)….but it’s ugly !!! it’s disaster […]

Leave a comment