Skip to content

Implementation metapatterns

Denys Poltorak edited this page May 26, 2026 · 9 revisions

A few architectures focus on implementation of components:

The Plugins family of patterns is about separating a system’s main logic from the customizable details of its behavior. That allows for the same codebase to be used for multiple flavors or customers.

Includes: Plug-In Architecture, Addons, Strategy, Hooks.

Hexagonal Architecture is a specialization of Plugins where every external dependency is isolated behind an Adapter, making it easy to update or replace third-party components.

Includes: Ports and Adapters, Onion Architecture, and Clean Architecture; Model-View-Presenter (MVP), Model-View-ViewModel (MVVM), Model-View-Controller (MVC), and Action-Domain-Responder (ADR); Pedestal and Cell (Cluster or Domain).

Microkernel is another derivation of Plugins, featuring a rudimentary core component which mediates between resource consumers (applications) and resource providers. The microkernel is a Middleware to the applications and an Orchestrator to the providers.

Includes: operating system, software framework, virtualizer, distributed runtime, interpreter, configuration file, Saga Engine, and AUTOSAR Classic Platform.

A Mesh consists of intercommunicating shards, each of which may host an application. The shards coalesce into a fault-tolerant distributed Middleware.

Includes: peer-to-peer networks, Leaf-Spine Architecture, Actors, Service Mesh, and Space-Based Architecture.

<< Hierarchy ^ Home ^ Plugins >>

Table of Contents:

Introduction
Foundations of software architecture
Basic metapatterns
Extension metapatterns
Fragmented metapatterns
Implementation metapatterns
Analytics
Appendices

Fast Navigation:

Websites about Patterns:

Clone this wiki locally