Mediator, Component,  Facade & Pub Sub Patterns

 

Created by Allen Rice

What is all of this?

  • A set of development patterns for UI components
  • Nothing new

what does it get us?

  • Solves problems around how we develop, organize and integrate our code

What is the scope of all this?

  • UI specific - no backend related changes
  • UX is unaltered

What exactly are these patterns?

  • Mediator
    • Knows the state of the application
    • Example: Air Traffic Controller
  • Components
    • Don't know about each other
    • Example: Airplanes
  • Facade
    • A dumbed down way to communicate
    • Example: ATC Commands
  • Pub / Sub?
    • How we communicate through the facade
    • Topics and Messages
    • Example: Radios

Can I just look at something?

Here's our sandbox

Sure - lets check out the POS sandbox

What are the benefits To using all this?

  • We can develop and test in isolation
  • We can do integration as a wholly independent story
  • Lets us track down issues
  • Lets us develop as parallel as we want to
  • We can implement the UI without doing integration

Are there any concerns here?

  • We can easily get ahead of ourselves
  • We should have a roadmap of components
  • We're doing it slightly different than POS did
  • Integration is always tricky
  • Sandbox code rot: Trades, Layaway Drop Down
    Sale Summary, etc

Things we should focus on

  • Topics
  • Test cases
  • UX
  • Always have a plan
  • Don't forget the sandbox at integration time

Mediator / Component Pattern

By Allen Rice

Mediator / Component Pattern

A brief overview of the development patterns that we'll be using to organize the UI for the account servicing project

  • 930