FacadePatternDiscussion

Last edit November 29, 2013
From TarDis
Any simplified and unified interface to a complex system can be considered an example of FacadePattern

Questions:
  • 1 When considering a "facade" as a simplified interface to a system, why not call it an InterfacePattern?
  • 2 Isn't there a separation of concerns associated with what you can see externally (dashboard, keyboard, screen, button), and what you can do with what you can see (and touch)?
  • 3 Doesn't a facade "hide" or cover certain of its features and capabilities?
  • 4 Isn't it possible in a facade to mis-represent (on-purpose) such that it is something completely different from what it appears (as used in mal-ware emails)? Such that a mis-direction occurs? (Who would think a TarDis as it appears could take you forward or reverse in time?)
  • .. more questions ... upon cooking answers ...

Answers:
  • 1 InterfacePattern isn't one of the GoF patterns.
  • 2 A FacadePattern could be used to facilitate SeparationOfConcerns.
  • 3 Not necessarily. All features and capabilities may be exposed, but instead of being distributed over multiple classes, they are accessed through the single facade class.
  • 4 In the context of OO design patterns, such a mis-direction wouldn't be a design pattern per se. It would be a security issue.

CategoryInterface