Skip to content
Liasion

Chapter 03Field guide

The application layer holds the logic.

The application layer decides what the system does. It turns a request into a rule, a decision, a calculation and a result that the rest of the stack can use.

A developer at a desk with code and a system diagram on screen
The application layer is where business rules become working behavior.

At the application layer, full stack developers need to understand the core business logic of the system. They should have a good understanding of object oriented programming and be familiar with languages like Java, Python, C# and PHP. They should also have an understanding of design patterns and algorithms.

What the layer owns

The application layer owns the rules that make the product specific. Pricing, permissions, approvals, calculations, workflows and the order of operations belong here. If the interface changes, the logic should still hold. If the database changes, the logic should still express the same business meaning.

Object oriented thinking

Object oriented programming gives a team a way to model concepts, responsibilities and relationships. It is not a guarantee of good design, but it can keep a large system from collapsing into a set of unrelated functions. Java, Python, C# and PHP all offer a route into that style of work.

Patterns and algorithms

Design patterns are shared answers to recurring design problems. Algorithms are the steps that turn an input into a result. A full stack developer does not need to name every pattern in a meeting, but they do need to recognize when a familiar problem is being solved badly.

Keep the logic legible

Code in this layer should make the business rule easy to find. Hidden behavior is a cost that the next developer pays.

Where the layer connects

The application layer receives calls from the web layer and works with the data layer to read and write state. It should not know the shape of every screen, and the screen should not need to know every rule.

04 / Continue Data: follow the state into storage