생각꿈들
35
2021-01-20 09:25:20
2
167

여러 비슷한 VO 보다는 상속관계를 가지는 VO가 나을까요?


비지니스 로직에서 사용하는 VO 1개와

데이터베이스의 N개 데이블 과의 관계를 DAO에서 매핑해주잖아요


이때 비슷한 필드를 가지는 VO를 설계할때, 어떤 방식이 좋을까요?

1) 비슷한 필드(변수)를 가진 여러 버전의 VO

2) 가능하면 상속받아서 다른 VO의 필드를 포함하는 VO


여기에 일반적으로 좋다고 여겨지는 방법이 있을까요?

0
  • 답변 2

  • 10k
    2021-01-20 09:46:35

    공통된것은 상속받아서 사용하는게 좋죠..

    유지보수 관점에서 다음 유지보수가 더 편한가를 생각해보세요. 


  • 훈마로
    657
    2021-01-20 12:08:50

    명칭을 좀더 명확히 하면 좋을 것 같네요.

    예전에 VO/DTO 관련 의미 이야기가 많았지만, 이제 정리가 된 내용입니다.

    Value Object(VO), Data Transfer Object(DTO)는 혼용하지 않으시는게 좋습니다.


    본 질문으로 돌아가, 비즈니스 로직에서 사용하는 VO가 정확한 VO인지, 도메인 클래스인지 구분이 필요하고요.

    이 구분을 떠나 중복된 필드값은 상속을 사용하는게 좋습니다. 하지만 잦은 상속도 문제가 되므로 도메인 클래스에서

    공통적으로 사용하는 것만 딱 하시는게 좋고, 일반적으로는 시퀀스류의 PK ID값, Audit류의 생성일시,생성자,수정일시,수정자 같은 것은 부모클래스로 빼는 것이 좋습니다.

  • 로그인을 하시면 답변을 등록할 수 있습니다.