Skip to content

Updated Architecture

Vanskarner edited this page Jul 26, 2023 · 3 revisions

Viewing the architecture of a software system as layers is not a meaningful way at the architectural level, it is an understatement. That is just what a part of , in my view, the book Clean Architecture: A Craftsman's Guide to Software Structure and Design (2017) tries to specify.

This is not to say that all of the above is wrong, in fact, everything else is retained and serves as the basis for all subsequent topics. The intention is to change the way we look at the architecture of a software system, as well as to address other concepts that are not directly addressed in the original clean architecture.

In order to address this topic, the following concepts are presented:

Transition The Meaning of Architecture

Transition

System Division and Deployment Strategy Independent

Instead of a layer-based approach, it adopts a component-based approach. A more adequate definition of what architecture means is presented, as well as how to think about the division of a system and how this architecture is not limited to a deployment strategy.
Code Decoupling

Code Decoupling

Learn how to separate the different parts of the code so that they work independently and are not strongly interconnected.
Main Component as Plugin Testing

Main Component

Testing

If changes to files or configuration items affect your system architecture, you are doing it wrong. Here it is emphasized that tests are also other components that follow the dependency rule. In addition, we describe the types of tests and talk a little about TDD.
Clone this wiki locally