Clean Architectures in Python

A practical approach to better software design

Leonardo Giordani

Abstractions Architecture Clean Code Development TDD

See in schedule Download/View Slides

Architectural considerations are often overlooked by developers or completely delegated to a framework. We should start once again discussing how applications are structured, how components are connected and how to lower coupling between different parts of a system, to avoid creating software that cannot easily be maintained or changed.

The “clean architecture” model predates Robert Martin, who recently brought it back to the attention of the community, and is a way of structuring applications that leverages layers separation and internal APIs to achieve a very tidy, fully-tested, and loosely coupled system. The talk introduces the main ideas of the architecture, showing how the layers can be implemented in Python, following the content of the book “Clean Architectures in Python”. The book recently reached 11,000 downloads and many readers found it useful to start learning how to test software and how to structure an application without relying entirely on the framework.

Type: Talk (30 mins); Python level: Beginner; Domain level: Beginner

Leonardo Giordani

We Got POP Ltd

Born in 1977, I started coding in April 1987 on a Sinclair ZX Spectrum. I then moved to MS-DOS PCs and in 1996 I started using Linux and became interested in operating system internals. I love architectures, algorithms, mathematics and cryptography. I currently work as an infrastructure engineer and Python developer.

From 2013 I blog some technical thoughts at
In 2018 I published the free book “Clean Architectures in Python”