Choosing Our Layers

Let’s learn about the different types of layers and how to utilize them in a project.

Categories of layers

We recommend the following software layers:

  • Data structures

  • A functional core

  • Tests

  • Boundaries

  • Lifecycle

  • Workers

Not every project will have all of these layers, but some will. It’s our job as the author of a codebase to decide which layers are worth the price and which ones to eliminate. It’s a lot to remember, so use this sentence as a mnemonic:

Do fun things with big, loud worker bees.

The first letters of the essential words in the sentence match the first letters in our layers:

  • Data (do)

  • Functional core (fun)

  • Tests (things with)

  • Boundaries (big)

  • Lifecycles (loud)

  • Workers (worker bees)

We can see how they all fit together in the following figure:

Create a free account to view this lesson.

By signing up, you agree to Educative's Terms of Service and Privacy Policy