4-Interface Segregation Principle(ISP)

Loading

Interface(Arayüzlerin) Ayrımı Prensibi denen bu prensipte Interface’ lerin mümkün olduğu kadar birbirlerinden ayrıştırılması gerektiğini belirtir. interface leri oluştururken barındırdığı üyeleri ortak olacak şekilde parçalayıp , bu üyeleri farklı interface ‘ler altında toplayıp, ayrı ayrı interface’ ler oluşturmak sağlıklı olacaktır. Çok genel bir Interface tanımlamak yerine birkaç özel küçük Interface tanımlamak daha iyidir. Aynı zamanda tek sorumluluk ilkesine de uygundur ve hiçbir nesne kullanmadığı alanlara bağımlı olmaya zorlanmamalıdır. İstemci sadece ihtiyaç duyduğu methodlara erişim sağlamalıdır.

Şimdi kötü ve iyi örnekler üzerinde bakalım.

Burada tüm çalışanlar için kişisel bilgiler ve maaş hesabı yapıldı fakat FullTime çalışan hesabı yapılırken Saatlik çalışnların gereksiz bilgileri yada ssatlik çalışanlar için tutulmuş oldu. Hem bu gelişime kapalı ve sürdürülebilir olmayacaktır.

İyi örneğe bakalım

Burada da görüldiği gibi saatlik çalışanların durumu ve maaş hesaplaması tam zamanlı çalışnlar için bilgiler ve hesaplamalar ayrılmış oldu. Başka türlü (stajyer gibi) bir çalışan geldiğinde de yeni bir Interface tanımlayıp ona göre işlem yapılması sağlıklı bir yöntem olacaktır.

Kaynak kodlarına adresten ulaşabilirsiniz.

sağlıcakla kalın…

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Mesut Yiğit

Kaliteli bilgilerin bulunduğu, paylaşımcı ve her daim geliştirici bir öğrenimin benimsendiği Teknik ve diğer konularda kendime ve geleceğe notlar