Understanding the DDD Concept

1

Good,

I'm starting a new application, relatively simple, and I want to structure it in the DDD concept.

I read a lot on the internet, I saw many examples and meanings, but I would like to know more simply.

Given the following structure (the pattern I found most on the internet):

  • "Project" .Application: Class Library where my persistence / repository and interface;
  • "Project" .Domain: Class Library where mine "Models / Entities";
  • "Project" .Infra.Data: Class Library responsible for mapping the models (mapping / fluentAPI);
  • "Project" .MVC: Standard MVC project, but without Models and Directly explicit repositories;

Is this structure correct? So I plan to stick with it for my next projects and reshape some that have already been deployed.

    
asked by anonymous 07.12.2015 / 19:44

1 answer

3

The correct answer is: it depends. Your architecture should be popup, that is, your requirements should guide the architecture.

Is this project organization correct? A: Yes.

However, what are your requirements? Very high performance? If the answer is yes, this separation of projects may affect performance, although it favors maintenance / organization.

I suggest something simpler, and if necessary, you refactor.

    
07.12.2015 / 20:09