Hacker News new | past | comments | ask | show | jobs | submit login

DDD is a good way to extract the business logic from the implementation.

By modelling the business you raise the business logic up to a 1st class element.

By implementing the business objects you encapsulate their functionality in the business.

The words "Account" or "Outstanding Balance" have business meanings. Modelling them allows you to express the business logic explicitly.

It also allows you to create tests that are related to that business logic, not the implementation.

You can still "build what you need and deal with the consequences of inevitable change later".

Model what you need to build, the business is going to have to make changes to that model to implement their changes, IT systems are a detail.

Change by extending and changing the DDD models.

To reverse the question, how do you write code that "does what you need" without understanding the domain?






Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: