Law of Demeter - Advantages

Advantages

The advantage of following the Law of Demeter is that the resulting software tends to be more maintainable and adaptable. Since objects are less dependent on the internal structure of other objects, object containers can be changed without reworking their callers.

Basili et al. published experimental results in 1996 suggesting that a lower Response For a Class (the number of methods potentially invoked in response to calling a method of that class) can reduce the probability of software bugs. Following the Law of Demeter can result in a lower RFC. However, the results also suggest that an increase in Weighted Methods per Class (the number of methods defined in each class) can increase the probability of software bugs. Following the Law of Demeter can also result in a higher WMC; see Disadvantages.

A Multilayered architecture can be considered to be a systematic mechanism for implementing the Law of Demeter in a software system. In a layered architecture, code within each layer can only make calls to code within the layer and code within the next layer down. "Layer skipping" would violate the layered architecture.

Read more about this topic:  Law Of Demeter

Famous quotes containing the word advantages:

    “[T]here is no Part of the World where Servants have those Privileges and Advantages as in England: They have no where else such plentiful Diet, large Wages, or indulgent Liberty: There is no place wherein they labour less, and yet where they are so little respectful, more wasteful, more negligent, or where they so frequently change their Masters.”
    —Richard Steele (1672–1729)

    “There are great advantages to seeing yourself as an accident created by amateur parents as they practiced. You then have been left in an imperfect state and the rest is up to you. Only the most pitifully inept child requires perfection from parents.”
    —Frank Pittman (20th century)

    “The respect for human rights is one of the most significant advantages of a free and democratic nation in the peaceful struggle for influence, and we should use this good weapon as effectively as possible.”
    —Jimmy Carter (James Earl Carter, Jr.)