LAPORAN
POLA - POLA PERANCANGAN
Implementasi Factory Pattern
Oleh :
Aulia Augusta (212410102056)
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER
UNIVERSITAS JEMBER
2024
Implementasi Factory Pattern
Factory Pattern adalah pola desain yang menyediakan sebuah metode untuk
membuat objek tanpa secara langsung menentukan kelas yang dibuat. Dengan Factory
Pattern, kita dapat membuat objek tanpa perlu terlalu terikat pada kelas atau
implementasi objek itu sendiri. Kita hanya perlu berinteraksi dengan pabrik (factory)
untuk mendapatkan objek yang kita butuhkan. Ini memberikan fleksibilitas dalam
memilih dan mengganti tipe objek yang ingin kita buat tanpa mempengaruhi kode di
tempat lain yang menggunakan objek tersebut.
Factory pattern sendiri dibagi 3 macam Simple factory,Abstract Factory,
Method Factory.
1. Simple Factory
Pada simple factory kelas concreteFactory berguna untuk membuat sebuah
obyek dan kelas Factory sendiri merupakan kerangka dari obyek yang akan
dibuat dimana berbentuk abstract class. lalu product dibuat melalui Concrete
Factory.
2. Method Factory
Pada factory method pembuatan object tidak dipanggil melalui inisiasi factory
class tetapi melalui interface, inisiasi objek dipanggil melalui sebuah method.
dengan begitu lebih fleksibel dependent pada sebuah interface bukan pada
concrete class.
3. Abstract Factory
Pada Abstract Factory patterns make sure bahwa client terisolasi dari
pembuatan object tetapi diperbolehkan menggunakan obyek yang telah dibuat.
Client hanya dapat mengakses obyek tersebut melalui sebuah interface.
Dengan menggunakan interface maka membuat menjadi loose couplig.
semakin tidak saling tergantung. misal kita ingin membuat objek segitiga
kuning kita tinggal membuat kelas segitiga dan kelas kuning. serta membuat
factorynya
Berikut adalah contoh implementasi factory method menggunakan bahasa python:
Output:
Penjelasan:
● Employee adalah kelas abstrak yang mendefinisikan metode work().
● Developer, Manager, dan QAEngineer adalah kelas konkret yang mewarisi dari
Employee dan mengimplementasikan metode work() sesuai dengan peran
masing-masing.
● EmployeeFactory adalah kelas pembuat yang memiliki metode statis
create_employee() untuk membuat objek karyawan berdasarkan departemen yang
diberikan.
● Saat create_employee() dipanggil dengan departemen yang diinginkan, itu membuat
dan mengembalikan instance karyawan yang sesuai.
● Di bagian klien, kita menggunakan EmployeeFactory untuk membuat objek karyawan
sesuai dengan departemen yang dibutuhkan dan kemudian memanggil metode work()
dari masing-masing karyawan tersebut.