본문 바로가기

공부 기록/영상 후기

[10분 테코톡] 인비의 DTO vs VO

https://youtu.be/z5fUkck_RZM

DTO(Data Transfer Object)

- 데이터를 전달하기 위해 사용하는 객체(데이터를 담아서 전달하는 바구니)

- 계층 간 데이터를 전달하기 위한 객체

- 오직 getter/setter 메서드만을 갖는다. => setter 메서드를 없애고 생성자를 통해 초기화하면 불변 객체

- 다른 로직을 갖지 않는다.

  

DTO Class VS Entity Class

요청이나 응답 값을 전달하는 클래스는 어떤 것을 사용해야 할까? => DTO Class

--- Entity Class는 데이터베이스와 매핑되어 있는 핵심 클래스이기 때문

--- DTO Class는 View의 변경에 따라 다른 클래스들에게 영향을 끼치지 않고 자유롭게 변경할 수 있다.

  

VO(Value Object)

- 값 그 자체를 표현하는 객체

- getter/setter 이외의 로직을 포함할 수 있다.

  

  

DTO => 데이터 전달용

VO => 값 표현용