This is Indirection according to Wikipedia

Assign the responsibility to an intermediate object to mediate between other components or services so that they are not directly coupled.

Controller seems to do this exactly, except that it is concerned with UI and Input events, while Indirection is more general. Am I wrong?

  • Yes, Controllers are a good example of Indirection -- indeed, the page you linked to even identifies it as such: "The indirection pattern supports low coupling and reuses potential between two elements by assigning the responsibility of mediation between them to an intermediate object. An example of this is the introduction of a controller component for mediation between data (model) and its representation (view) in the model-view-controller pattern. This ensures that coupling between them remains low." Nov 23 at 13:23
  • @BenCottrell 🙏🏿🙏🏿🙏🏿
    – Yahya Fati
    Nov 24 at 6:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.