Skip to main content
grasp.study
About
Explore
Pricing
Log in
Try it for free
Back to course
👋
Welcome to a Grasp lesson
Create a free account
to keep studying and create your own study path.
Explore drive-driven development
·
Module 2
Tactical Patterns: Domain Model Building Blocks
1
Entities vs. Value Objects
Distinguish between Entities (which have a unique identity) and Value Objects (defined by their attributes)
2
Creating Immutable Value Objects with Python Dataclasses
Implement immutable Value Objects in Python using features like `dataclasses(frozen=True)`
3
Implementing Stable Entity Identity in Python
Implement Entities in Python, ensuring they have a stable identity throughout their lifecycle
4
Aggregates: Consistency Boundaries for Related Objects
Define an Aggregate as a consistency boundary for a group of related objects
5
Aggregate Root: Single Entry Point for Modifications
Designate an Aggregate Root to act as the single entry point for modifications within an aggregate
6
Aggregate Root: Encapsulating Business Logic
Encapsulate business rules and invariants within an Aggregate Root's methods
Previous module
Foundations: DDD and Software Architecture
Next module
Tactical Patterns: Repositories and Persistence