Skip to content
Benjamin Roth edited this page Nov 16, 2016 · 27 revisions

Coding is all about writing a flow of commands.

Generally you basically go on, unless something wrong happens. Whenever this happens you have to halt the flow and send feedback to the user.

When conditions stack up, readability decreases.

One way to solve it is to create abstractions to wrap your business logic (service objects or the like). There some questions arise:

  • what should a good service return?
  • how to handle errors?
  • how to call a service within a service?
  • how to chain services / commands

Waterfall is my answer to these questions.

Clone this wiki locally