Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I am currently new to Dependency Injection pattern. I am influenced by link by Mark Seemann.

I have a confusion regarding whether an interface for an agent class of some agent module should be included in domain layer? by agent I mean a class / module that interacts with external wcf/ webservices.

I have a diagram that shows it. In short, is it Ok to have:

IProductAgent interface in Business layer where the actual implementation will be in an Agent Module.

The confusion arises by the fact that: Is calling a service even considered a business rule?

Today a service fulfills a facility, tomorrow there might be some another means of catering this same facility. Liskov's Substitution Principle.

Apologies if I am mixing things here.

share|improve this question
    
I don't see anything in your "diagram" link. –  Robert Harvey Aug 29 '13 at 17:29
    
@RobertHarvey fixed the link –  shankbond Aug 29 '13 at 17:36

1 Answer 1

up vote 1 down vote accepted

Yes, the domain layer may have external dependencies where the dependencies are defined by interfaces. Taking this approach makes the domain layer ignorant of the actual implementation

Erik Evans who defined Domain Driven Design does in fact use this approach in his book to be able to load domain entities from a data source.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.