Architecture Patterns with Python

Introduction

Weā€™ve found that many developers, when asked to design a new system, will immediately start to build a database schema, with the object model treated as an afterthought. This is where it all starts to go wrong. Instead,Ā behavior should come first and drive our storage requirements.Ā After all, our customers donā€™t care about the data model. They care about what the systemĀ does; otherwise theyā€™d just use a spreadsheet.

The first part of the book looks at how to build a rich object model through TDD (inĀ [chapter_01_domain_model|chapter_01_domain_model]), and then weā€™ll show how to keep that model decoupled from technical concerns. We show how to build persistence-ignorant code and how to create stable APIs around our domain so that we can refactor aggressively.

To do that, we present four key design patterns:

|800

|800
Three layered architecture

Chapter 1.Ā Domain Modeling

Thoughts šŸ¤” by Soumendra Kumar Sahoo is licensed under CC BY 4.0