prgrms-web-devcourse / BE-Team-preArmand-Book-study

2 stars 2 forks source link

[DDDD 1장] 영속성 오퍼레이션 위치 관련 #31

Closed epicblues closed 2 years ago

epicblues commented 2 years ago

page 29 중간

또한 종종 영속성 오퍼레이션을 비즈니스 로직 중간에 수행하기도 한다.

  1. 영속성 오퍼레이션은 비즈니스 로직을 다 수행하고 마지막에 수행되어야 하는 것이 바람직하기 때문에 저자가 문제 상황이라고 여긴 것일까요?

  2. 그리고 여기서 말하는 영속성 오퍼레이션은, repository.findById()와 같은 조회(Query)가 아니고 repository.save()와 같은 명령(Command)을 말하는 걸까요?

  3. 저는 예전 과제에서 repository를 통해 불러온 엔티티를 DTO로 바꾸는 연산을 서비스 메서드 마지막에 둔 적이 있는데, 이것도 저자의 기준에서는 문제가 되는 것일까요? 아니면 DTO 전환은 핵심 비즈니스 로직이 아니기 때문에 문제가 되지 않을려나요?

HunkiKim commented 2 years ago

저도 이부분 용어가 잘 이해가 되지 않긴 합니다! 일단 저도 find같은 조회보단 cud같은것이라고 생각했습니다.

yuminhwan commented 2 years ago
  1. DDD를 아직 잘 모르지만 영속성 오퍼레이션을 save와 같은 명령을 말한다고 가정한다면 민성님 말씀처럼 영속성 오퍼레이션을 중요한 비즈니스 로직 중간에 진행하게 되면 문제가 발생할 수 있지 않을까 싶습니다. 아직 비즈니스 로직이 다 진행되지 않았는데도 영속성 오퍼레이션을 진행한다는 건 위험하지 않을까? 라고 생각이 드네요. 근데 또 트랜잭션을 건다면 괜찮지 않을까? 라는 생각도 들고 좀 더 DDD를 공부해봐야 알 것 같습니다.

  2. 저도 그렇게 이해했습니다. 영속화하는 오퍼레이션 느낌이 아닐까요..?

  3. 저도 DTO 전환은 핵심 비즈니스 로직이 아니기 때문에 문제가 되지 않을 것 같습니다. DTO는 그저 레이어간의 데이터 이동을 위한 것이라서 크게 문제 되지 않을까? 라는 생각이네유