Visit complete Design and Architecture roadmap

← Back to Topics List

Architectural Patterns

Architectural patterns are a set of solutions that have been proven to work well for specific types of software systems. They provide a common vocabulary and set of best practices for designing and building software systems, and can help developers make better design decisions. Some common architectural patterns include:

  • Model-View-Controller (MVC): A pattern for separating the user interface, business logic, and data storage components of a system.
  • Microservices: A pattern for building systems as a collection of small, independently deployable services that communicate over a network.
  • Event-Driven: A pattern for building systems that respond to events and perform actions in response.
  • Layered: A pattern for organizing a system into layers, with each layer providing a specific set of services to the layer above it.
  • Pipe-and-Filter: A pattern for building systems as a series of independent, reusable processing elements that are connected together in a pipeline.
  • Command-Query Responsibility Segregation (CQRS): A pattern for separating the handling of commands (which change the state of the system) from the handling of queries (which retrieve information from the system)
  • Blackboard: A pattern for creating a centralized repository of information that can be accessed and modified by multiple independent modules or subsystems.
  • Microkernel: A pattern that aims to minimize the amount of code running in kernel mode and move as much functionality as possible into user-mode processes.
  • Serverless: A design pattern that allows developers to build and run applications and services without having to provision and manage servers.
  • Message Queues and Streams: A pattern that decouples different components of a system and enables asynchronous communication between them.
  • Event Sourcing: A pattern that stores all changes to the system’s state as a sequence of events, rather than just the current state.

Learn more from the following links:

Roadmaps Guides Videos About YouTube

roadmap.sh by Kamran Ahmed

Community created roadmaps, articles, resources and journeys to help you choose your path and grow in your career.

© roadmap.sh · FAQs · Terms · Privacy