<$BlogRSDUrl$>

Tuesday, March 23, 2004

Object Oriented

Semasa sedang membaca artikel tentang method equals dlm Java, terbaca tentang Class Employee dan Class Student yg extend Class Person. Termenung sat. Nampaknya, masih ada orang dan mungkin masih ramai yg menggunakan cara design sedemikian iaitu extend/inherit di mana:
Person ialah abstract kpd orang itu sendiri dan
Role ialah abstract peranan yg dimainkan oleh orang tersebut, cthnya peranan pekerja dan peranan pelajar.

Utk saya, saya lebih suka kpd hubungan association antara Orang dan Peranan, bukan hubungan inheritance. Antara sebabnya ialah krn orang boleh ada 1 atau banyak peranan. Saya adalah 1 object orang dgn pelbagai peranan, spt Muslim, Bapa, Suami, Anak, Adik, Pekerja, dll. Walaupun peranan yg mana perlu wujud tu bergantung kpd konteks sistem (ingat, betapa pentingnya kontek ini), tapi, adalah amat mudah utk kebanyakan application mempunyai pelbagai peranan yg perlu dimainkan oleh seseorang.

Pendapat saya ni dipengaruhi, walaupun tak secara exclusive, oleh mamat peter coad dan martin fowler. Kira, mazhab sendiri la krn ikut faham2 sendiri. Betul atau tidak, setakat ini, masih berguna utk saya.

Comments: Post a Comment

This page is powered by Blogger. Isn't yours?