O'Reilly logo
  • Joel Gerber thinks this is interesting:

delegate the handling of an interpreted event to a collaborator, which we will represent with an AuctionEventListener interface

From

Cover of Growing Object-Oriented Software, Guided by Tests

Note

When discovering new collaborators, first define them as an interface and test interactions before bothering to define them as a class.