2010-06-04 3 views
1

배경 : 우리 앱은 서비스 레이어를 호출하는 비교적 간단한 MVC 웹 앱입니다. 이 계층은 작업 단위 패턴을 사용하여 일부 리포지토리에 액세스 한 다음 해당 개체를 도메인 수준 서비스에 전달하여 일부 논리를 수행합니다. 그것은 매우 깨끗하고 우리를 위해 잘 작동합니다.리포지토리 인터페이스를 도메인 수준 서비스에 전달하는 것이 깨끗합니까?

문제 : 이제 우리는 제 3 자로부터 많은 양의 xml을 가져 와서 처리해야하는 경우가 있습니다. 프로세스는 상당히 복잡하며 프로세스 동안 다양한 저장소 호출을해야합니다 (성능은 중요하지 않음). 그 논리는 우리의 영역에서 다른 모든 논리와 함께 살아야합니다.

질문 : 액세스 할 도메인 수준 서비스의 저장소에 인터페이스를 전달하는 것이 깨끗한가요?

답변

1

이런 종류의 프로세스를 위해 저장소에 인터페이스를 전달하는 것이 디자인 냄새라고 생각합니다. 아마 나는 오해하고있다. 그러나 XML 처리가 저장소 내부에서 처리 될 것 같다. 저장 수단인가요? 그렇더라도, 이것은 저장소에 대한 인터페이스를 허용하는 XML 처리에만 관심이있는 별도의 클래스에 의해 처리되어야합니다.

저장소는 데이터 저장소에 대한 액세스 처리에만 관심을 가져야합니다.

이와 같은 프로세스가 저장소를 여러 번 호출해야하는 경우는 드뭅니다. XML 처리 로직을 특성 테스트 할 수 있도록 XML 프로세서는 저장소에 대한 인터페이스를 받아 들여 XML 처리 자체를 조롱 할 수 있습니다.

+0

아니요, 처리가 저장소에 없을 것입니다 , 도메인에 살았던 서비스, IRepository를받는 것. – ericvg

+0

좋아, 나는 그 때 오해했다. 인터페이스를 저장소에 전달하는 것처럼 들립니다. 그 이후로는 다른 방법이기 때문에 문제에 접근하기위한 아이디어와 깨끗한 방법입니다. –

관련 문제