0

ADM과 RDM의 차이점을 이해하려고합니다.빈혈 데이터 모델 (ADM Vs RDM)

내가 보는 방법은 adM 및 RDM 토론이 모두 워크 플로 (개체 공동 작업)를 실제로 결정하는 곳으로 이어진다는 것입니다. RDM은 데이터 저장소 객체 및 유효성 검사 객체를 비즈니스 객체 (모델)의 생성자에 주입합니다. 그런 다음 Business Object 메소드는 이들 오브젝트를 협업하게하는 워크 플로우를 정의합니다.

ADM은이 모든 협력 객체 (모델, 저장소, 뷰 모델/컨트롤러 등의 ViewModel의 방법/컨트롤러로 검증 객체 객체 사이의 워크 플로우도 공동 작업을 정의를 전달합니다.

이 정확이 아니면 내가 놓친 거지 무엇보다 근본적인 것인가?

답변

3

RDM = Rich Domain Model. ADM과 RDM (사실 '실제'도메인 모델)의 주요 차이점은 RDM이 비즈니스 프로세스를 모델링한다는 것입니다. 앱은 가능한 한 자연스러운 유기농으로 개발되었습니다.)

도메인 모델은 비즈니스의 행동을 모델링하는 반면 빈혈 모델은 기본적으로 데이터를 보유하는 POCO로 구성되며 기본적으로 db 테이블을 모방합니다. 그런 다음 해당 POCO는 거의 절차적인 방식으로 사용되며 서비스에 의해 유효성이 검사되고 처리됩니다 (대부분 정적 인 방법입니다).

간단히 말해서 ADM은 아무런 행동도하지 않는 개체로 구성되며 데이터 가방으로 만 작용하며 RDM은 가능한 한 정확하고 자연스러운 비즈니스 프로세스를 모델링합니다. 대부분 빈혈 영역은 db 중심적 접근 방식의 결과로 모든 것이 시작되고 db 중심으로 시작됩니다.

컨트롤러, 뷰 및 DI 컨테이너는 구현 세부 사항입니다.