Bir sınıf veya bir interfaceten türeyen ve aynı metotlara sahip birden çok sınıfınız varsa ne yaparsınız.
Örnek olarak bir Personel interface'imiz olsun ve içinde maaş bilgisini ve personelin ünvanını getiren metotlarımız olsun. Böylece bütün sınıflarımızı buradan kontrol edebiliyoruz. Bir değişiklik gerektiğinde tüm projede teker teker sınıflarımızı arayacağımıza buradan gerekli değişiklikleri yapıp tüm projeye entegre edebileceğiz. Aslında bir nevi kontrol merkezi kurmuş olacağız :)
Bu iki metot her sınıfta olacaktır. Elimizde de uzman yardımcısı, uzman, kıdemli uzman, teknik müdür ve müdür sınıflarımız olsun. Kullanacağımız patter factory pattern'dir. Peki bu pattern'i nasıl kullanacağız?
Ben bir FactoryClass'ı oluşturdum ve bunun içinde ilk olarak Personel interface'imi tanımladım.
Şimdi de sınıflarımızı FactoryClass'ımızın içine ekleyelim.
Birde işlemler sırasında kullanılmak üzere kullanacağım enum tanımladım. Bu bir sonraki adımda işimi kolaylaştıracak.
Sırada gelen parametreye göre bize istediğimiz sınıfı bize döndürecek olan metodumuzu yazmaya
geldi.
Eveeett artık sıra tanımlarımızı kullanmaya sıra geldi. Tahmin edeceğiniz gibi yine MVC kullanıyorum :D
Şimdi ise View'de gelen verilerimizi görüntüleyelim.
Gelelim ekran görüntümüze bakalım ne oldu.
Bir design pattern'ın daha sonunda geldik. Bir dahaki design patternda görüşmek üzere hoşçakalın :)
Hiç yorum yok:
Yorum Gönder