Setelah akhirnya mulai serius mencoba mempelajari beberapa pola dasar (sangat terlambat dalam karier, tapi itu cerita yang berbeda), saya mencoba memahami perbedaan antara Pola Pabrik dan Pabrik Abstrak.
Apa perbedaan utama antara kedua pola ini?
Saya mengerti bahwa Metode Pabrik menciptakan objek melalui warisan dan Pabrik Abstrak melakukannya melalui komposisi objek, tetapi dari sudut pandang praktis, saya masih mengalami kesulitan memvisualisasikan bagaimana mereka bekerja.
design-patterns
factory-method
Phil.Wheeler
sumber
sumber
new
bukan metode (dalam beberapa - sistem objek yang diakui umum).Jawaban:
The Pabrik Metode biasanya dikategorikan oleh pernyataan switch di mana setiap kasus mengembalikan kelas yang berbeda, menggunakan antarmuka akar yang sama sehingga kode panggilan tidak pernah perlu untuk membuat keputusan tentang pelaksanaan.
Pikirkan pabrik validator kartu kredit yang mengembalikan validator berbeda untuk setiap jenis kartu.
The Abstract Factory adalah di mana Anda memiliki beberapa kelas pabrik beton (bukan Metode Pabrik) berasal dari satu antarmuka yang dapat kembali berbagai jenis dari metode yang berbeda.
Pikirkan manajer permainan catur dengan kelas yang berbeda untuk setiap rangkaian aturan varian.
Pabrik Abstrak, sangat mirip dengan Strategi, sering dipilih menggunakan Metode Pabrik, tetapi tidak perlu menggabungkannya sehingga itu adalah polanya sendiri.
sumber