Akhir-akhir ini saya mulai berpikir bahwa memiliki banyak kelas manajer dalam desain Anda adalah hal yang buruk. Gagasan itu belum cukup matang bagi saya untuk membuat argumen yang meyakinkan, tetapi inilah beberapa poin umum:
Saya merasa jauh lebih sulit bagi saya untuk memahami sistem yang sangat bergantung pada "manajer". Ini karena, selain komponen program yang sebenarnya, Anda juga harus memahami bagaimana dan mengapa manajer digunakan.
Manajer, sering kali, tampaknya digunakan untuk meringankan masalah dengan desain, seperti ketika programmer tidak dapat menemukan cara untuk membuat program Just Work TM dan harus bergantung pada kelas manajer untuk membuat semuanya beroperasi dengan benar.
Tentu saja, mangers bisa baik. Contoh yang jelas adalah EventManager
, salah satu konstruksi favorit saya sepanjang masa. : P Maksud saya adalah bahwa manajer tampaknya terlalu sering digunakan, dan tanpa alasan selain menutupi masalah dengan arsitektur program.
Apakah kelas manajer benar-benar merupakan tanda arsitektur yang buruk?
EventManager
adalah nama yang mengerikan untuk sebuah kelas. Seolah-olah melakukan sesuatu dengan peristiwa, tapi apa ?
Of course, mangers can be good. An obvious example is an EventManager
menjelaskan semuanya di sana. Penyalahgunaan konsep adalah arsitektur yang buruk, tetapi ada kasus penggunaan yang sah. Hal yang sama berlaku untuk hampir semua hal.