Ο νόμος του Demeter
- Στον αντικειμενοστρεφή προγραμματισμό ο νόμος του Demeter ορίζει τον
συνιστώμενο τρόπο συνεργασίας των αντικειμένων.
- Ο νόμος αυτός προάγει την περιορισμένη σύζευξη μεταξύ κλάσεων.
- Έτσι σε κλάσεις μια μέθοδος επιτρέπεται μόνο να καλεί μεθόδους:
- της δικής της κλάσης
- αντικειμένων που έλαβε ως παραμέτρους
- αντικειμένων που δημιούργησε
- αντικειμένων που περιέχει
Παράδειγμα:
class Demeter {
private A a;
private int myFunc() { /* ... */ }
public void example (B b) {
C c = new C();
int f = myFunc();
// ...
b.paramMethod();
a = new A();
a.createdMethod();
c.ownMethod();
}
}
Σημείωση:
Ο νόμος του Demeter (προφ. νταϊμέτρ) (Lieberherr και Holland 1989)
έλαβε το όνομά του από το ομώνυμο ερευνητικό έργο,
το οποίο με τη σειρά του ονομάστηκε προς τιμή της
αρχαίας θεάς Δήμητρας.