DDD+ 계층 구조에서 사용자가 등록할 때의 데이터 프로세스

2196 단어 DDD
책 에서 소개한 DDD+층 구조의 실현 샘플 itddd/Layered의 데이터 흐름은 그림에서 다음과 같이 기술되었다.

사용자가 새로 등록할 때의 데이터 프로세스


  • Controller, Application Service, Repository를 통해 데이터를 재설치합니다.(※ 참고로 사용자를 확보한 뒤 콘troller에 User 정보를 반납하면 Chapter 6에 등장하는 DTO의 User Data에 User 정보를 불러온 뒤 UserGetResult에 반납합니다.)
  • 솔리드의 User는 Factory를 통해 생성됩니다.
  • 다음은 책과 함께 읽기 위해 챕터와 학급 기재처를 열거한다.

    도메인 객체(Chapter2, 3)

  • SnsDomain/Users/User(솔리드)
  • SnsDomaain/Users/UserId(값 객체)
  • SnsDomain/Users/UserName(값 객체)
  • 도메인 서비스(Chapter4)


    값 대상이나 실체에 설치할 때 조화롭지 못한 행동을 정의합니다. (사용자의 확인 등을 반복합니다.)컨디션이 없어요.
  • SnsDomain/Services/UserService
  • 창고(Chapter5)


    책임은 도메인 이름 대상의 영구화와 재건이다.
  • SnsDomain/Models/Users/IUserRepository
  • EFInfrastructure/Persistence/Users/EFUser Repository(5.7 ORM에 따른 EnityFrame work 구현)
  • 응용 서비스, DTO, 명령 객체(Chapter6)


    SnsApplication/Users/UserApplicationService


    역대상을 강조하여 용례를 실현하는 대상.영역의 규칙은 기술되어서는 안 된다.컨디션이 없어요.

    SnsApplication/Users/Commons/UserData


    도메인 객체를 DTO(데이터 Transfer Object)로 이동하고 로 돌아갑니다.
    (도메인 객체를 외부에 공개하는 것은 다음과 같은 단점이 있습니다.)
  • 역 대상의 행위는 응용 서비스 이외에 호출되고 응용 프로그램이 제공해야 할 코드로 곳곳에 분산된다
  • 도메인 객체에 대한 의존도가 높아지고 도메인이 변경될 때 영향의 범위가 넓어짐
  • SnsApplication/Users/Update/UserUpdateCommand


    사양 변경 시 서비스 방법을 적용하는 서명이 영향을 받지 않도록 명령 대상으로 정의

    DI Container(Chapter 7)


    의존 관계의 통제.itddd는 C#의 ServiceCollection을 사용합니다.
  • WebApplication/Config/Dependency/EFDependencySetup
  • WebApplication/Config/Dependency/InMemoryModuleDependencySetup
  • WebApplication/Config/Dependency/SqlConnectionDependencySetup
  • MVC 프레임워크(Chapter8)

  • WebApplication/Startup
  • WebApplication/appsettings.json
  • WebApplication/Controllers/UserController


    사용자로부터 입력 데이터(Http 요청)를 응용 프로그램에 전달하는 변환을 수행합니다.

    WebApplication/Models/Users/Post/UserPostRequestModel


    보기에서 받은 데이터가 연결된 대상입니다.
    UserRegister Command와 유사한 데이터 구조임에도 용도가 달라 사용하지 않는다.

    좋은 웹페이지 즐겨찾기