This Article 
 Bibliographic References 
 Add to: 
Assuring Good Style for Object-Oriented Programs
September/October 1989 (vol. 6 no. 5)
pp. 38-48

The language-independent Law of Demeter, which encodes the ideas of encapsulation and modularity in an easy-to-follow form for object-oriented programmers, is presented. The law was developed during the design and implementation of the Demeter system, which provides a high-level interface to class-based, object-oriented systems. Two forms of the law, the class and object forms, are described. Its motivation is to ensure that the software is as modular as possible. Principles covered by the law include coupling control, information hiding, information restriction, information localization, and structured induction. An example is given to show how the law is applied, and valid violations are identified. It is shown how to transform a method that does not satisfy the law into one that does.

Index Terms:
class forms; good style; object-oriented programs; Law of Demeter; encapsulation; modularity; Demeter system; high-level interface; object forms; coupling control; information hiding; information restriction; information localization; structured induction; object-oriented programming; programming environments; user interfaces
Karl J. Lieberherr, Ian M. Holland, "Assuring Good Style for Object-Oriented Programs," IEEE Software, vol. 6, no. 5, pp. 38-48, Sept.-Oct. 1989, doi:10.1109/52.35588
Usage of this product signifies your acceptance of the Terms of Use.