Vladimir KhorikovModeling Relationships in a DDD WayLet’s talk about modeling of relationships, including the dreaded many-to-many relationships, in a DDD way.11 min read·Apr 19, 2022--1--1
Vladimir KhorikovCollections and Primitive ObsessionDoes the primitive obsession anti-pattern apply to collections? In other words, should you introduce a custom class for a collection?4 min read·Feb 16, 2022----
Vladimir KhorikovDatabase and Always-Valid Domain ModelToday, we’ll talk about an important question: how does the application database fit into the concept of Always-Valid Domain Model?6 min read·Sep 1, 2021----
Vladimir KhorikovSpecification Pattern vs Always-Valid Domain ModelThere’s an interesting controversy between two DDD topics: the Specification pattern and the Always-Valid domain model.5 min read·Jul 28, 2021--2--2
Vladimir KhorikovStatic methods considered evil?Are static methods good or bad? Over the course of my career I did a full circle on this topic. In this article, I’ll try to describe this…5 min read·Apr 13, 2021----
Vladimir KhorikovAlways-Valid Domain ModelI was re-reading some old articles about always-valid domain models, including this one form Jeffrey Palermo and the response to it from…13 min read·Feb 4, 2021--2--2
Vladimir KhorikovDomain model purity and the current timeI’m continuing the topic of domain model purity. This time, we’ll look at it with regards to getting the current date and time.5 min read·Sep 24, 2020----
Vladimir KhorikovThe CAP theorem of domain modelingI’ve been meaning to write this article for a long time and, finally, here it is: the topic of domain model purity versus domain model…7 min read·Aug 11, 2020--1--1
Vladimir KhorikovHow to Unit Test an Abstract ClassHow to unit test an abstract class? Or a whole class hierarchy that depends on that abstract class? Let’s see.5 min read·Jun 29, 2020--1--1
Vladimir KhorikovDRY vs DAMP in Unit TestsIn this post, we’ll make a deep dive into the DRY and DAMP principles and will talk about the false dichotomy around them.11 min read·Jun 15, 2020----