O'Reilly logo

Fundamentals of Software Architecture by Neal Ford, Mark Richards

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Part II. Architecture Styles

The difference between an architecture style and an architecture pattern can be confusing. We define an architecture style as the overarching structure of how the user interface and backend source code is organized (such as within layers of a monolithic deployment or separately deployed services) and how that source code interacts with a datastore. Architecture patterns, on the other hand, are lower level design structures that help form specific solutions within an architecture style (such as how to achieve high scalability or high performance within a set of operations or between sets of services).

Understanding architecture styles occupy much of the time and effort for new architects because they share importance and abundance. Architects must understand the various styles and the tradeoffs encapsulated within each make effective decisions; each architecture style embodies a well known set of tradeoffs that help an architect make the right choice for a particular business problem. Choosing the wrong architecture style will lead to failure; choosing the right one will lead to success.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required