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?

Advertisement

~ by desscc 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 Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

 
Follow

Get every new post delivered to your Inbox.