You're misunderstanding DDD in Angular (and Front end)

https://news.ycombinator.com/rss Hits: 1
Summary

MotivationIn the recent year or two I've seen lots of discussions around building Domain-Driven Design in Angular applications. My observation is that people discuss things that are orthogonal to DDD at best - or even totally derailed from what DDD is about at its core.Participants who attended my Angular and/or Architecture trainings or who came to my NG-Poland workshop, or simply people whom I meet here or there (frontend developers, but mostly from Angular community) all seem to discuss DDD/Angular in terms of specific tooling and specific structure of the application.Also, I see posts in social media such as this one:Obviously there's absolutely nothing wrong with asking questions (I'd rather have questions that can't be answered than answers that can't be questioned). However, all this shows that the wide Frontend/Angular community has little idea on why/when/how would you even approach Domain-Driven Design.All in all, there's a growing semantic diffusion within frontend communities about DDD and it's bringing more harm than good (in short, semantic diffusion happens when people use a term without understanding it and, within some time, the meaning gets derailed 鈽癸笍).That's what I want to address in this post 馃.Business Context ExampleIn order to illustrate DDD concepts in a more approachable way, let's assume that we're working on a system that allows patients to schedule appointments with doctors, specialists, etc. to deal with medical issues. Putting it very simple, we could say that we're building a medical appointment application.We'll stick to examples from this domain.DDD is abstract and difficultDDD is a methodology that's rather easy to cover just the main topics and building blocks (see: DDD at a glance section below). But it takes many years of hard work to gather the experience (not just theoretical knowledge) to be able to use it in practice for the benefit of your product.It's difficult to get the abstract concepts right and then to reificate them ...

First seen: 2025-05-16 08:42

Last seen: 2025-05-16 08:42