2 days ago
Clean Architecture in practice. Clean Architecture is a popular approach to building software applications. A Clean Architecture defines clear boundaries between different application layers, resulting in improved maintainability. In addition, Clean Architecture approach aims to keep the business logic independent of any specific external frameworks or libraries, making it easier...
more...
2 days ago
In this article, you will learn: What is hexagonal architecture (or “ports & adapters” as this architecture is officially called)? What are the advantages of hexagonal architecture over classical layered architecture? What distinguishes hexagonal architecture from “clean architecture” and “onion architecture”? How are hexagonal architecture, microservices, and Domain Driven...
more...
Mar 4
Whether you’ve worked on a large or a small project, throughout your career, someone has initiated an architecture pattern on the project you’re working on; more often than not, it’s you on small personal projects, but you’re not aware you’re using one. In this article, we’ll endeavour to discuss what...
more...
Jan 18
Are you wondering if there is life beyond the conventional layered, clean or hexagonal code architectures? It turns out there is an old concept known as Functional Core, Imperative Shell (FCIS). Let’s take a closer look and see how it could shake things up in constructing maintainable systems. Traditional code...
more...
Nov 29, 2023
Source: InfoQ, 2023 2023 is almost coming to the end. It’s always a good idea to reflect back on what has been the popular topic on Software Architecture and Design over the last one year. In this article, we will discuss some of the common software architecture and design...
more...
Oct 27, 2023
The goal of traditional Layered Architectures is to segregate an application into different tiers, where each tier contains modules and classes that have shared or similar responsibilities, and work together to perform specific tasks. There are different flavors of Layered Architectures and there’s no rule that determines how many...
more...
Sep 14, 2023
Balancing Business Needs: Evaluating Architecture in Domain-Driven Design One topic has come up again and again over the years, sometimes more, sometimes less, in conversations among developers: What’s the best way to modularize software? As a longtime software developer, I’ve seen the tides shift and a variety of approaches rise...
more...
Sep 11, 2023
Introduction In the realm of software development, the complexity of applications has steadily increased over time. To tackle this challenge, software architects have continuously evolved their approaches to designing and structuring backend systems. In this article, we will delve into the evolution of backend software architecture, focusing on key...
more...