Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

5
  • In your last sentence, do you mean to make one project where all interfaces can be placed? For example a project named 'Interfaces' with some logical structure in it based on the domain model. And all other projects with implementations would reference the Interfaces project? If this is fine, then I have another question; Is it a good practice to split up the Interfaces project into sub domains? Commented Jul 26, 2018 at 8:34
  • 1
    Yeah, that's a pretty common pattern. If you have "MyProject.Core.dll" and "MyProject.ModuleA.dll", you might want to have a "MyProject.Interfaces.dll". That way you can have interfaces that are used by both libraries without creating circular depedencies. Commented Jul 26, 2018 at 8:36
  • Is it a good practice to split up the Interfaces project into sub domains then? So how will my solution look like in the solution explorer (in case of .NET). several implementation projects and several interface projects. what are the best practices for naming those projects. Any articles you recommend? I love reading about this. Commented Jul 26, 2018 at 8:39
  • Does this 'common pattern' have a name? Where can I read more about this? Commented Jul 26, 2018 at 8:44
  • I think you should ask a new question. Or come to C# Chat. Commented Jul 26, 2018 at 10:20