O'Reilly logo
  • Gustavo Lopez thinks this is interesting:

If objects were human and could describe their own relationships, in Figure 4.5 Trip would be telling Mechanic: “I know what I want and I know how you do it;” in Figure 4.6: “I know what I want and I know what you do” and in Figure 4.7: “I know what I want and I trust you to do your part.”

This blind trust is a keystone of object-oriented design. It allows objects to collaborate without binding themselves to context and is necessary in any application that expects to grow and change.


Cover of Practical Object-Oriented Design in Ruby: An Agile Primer


Every object should do it's part