Demeter Kanunu (Law Of Demeter)-En az Bilgi Prensibi
Nesnelerin birbirlerini bilmeleri kaçınılmaz olduğundan dolayı nesneler birbirlerinin gerçek tiplerini değil arayüzlerini bilmelidirler.
Peki bir nesne neleri bilmelidir?
- Bir nesne olabildiğince az nesne bilmelidir.
- Bir nesne işini yapmak için kendisinden hizmet alması kaçınılmak olabildiğince az nesne bilmelidir.
Bu prensibe göre bir nesnenin metotlarında, kendisi üzerinde metot çağrısı yapabileceği nesneler ancak şunlar olabilir.
- O nesnenin instance variableları.
- O nesnenin metotlarına geçilen nesneler.
- O nesnenin metot unda oluşturulan nesneler.
Yani bir nesne ancak arkadaşıyla konuşur, yabancılarla konuşmaz.
Sonuç olarak böl parçala teknikleriyle bir nesnenin haberleşebileceği nesneleri olabildiğince minimum da tutmamız lazım. Ayrıca sorumluluklarını yerine getirmek için bildiği nesnelerden hizmet alması gerekir bilgi değil. Yani bana bu nesneyi ver yerine bana bu işi yapar mısın demesi lazım.