Record 를 Dto 로 사용하는 이유

DragonTiger·3일 전
0

Record

Java 14에서 도입되고 Java 16부터 정식 도입된 언어 차원의 기능입니다.
record는 불변 객체(Immutable Object)를 쉽게 만들 수 있도록 설계 또한,
record는 클래스에서 필수적으로 작성해야 했던 보일러플레이트(생성자, getter, equals, hashCode, toString 등)를 컴파일러가 자동 생성해줌으로써 코드를 간결하게 해준다.
기존에는 Lombok 라이브러리를 통해 이 문제를 해결했지만, record의 등장으로 Java 자체적으로 이 기능을 지원하게 되었다.
또한 Lombok 라이브러리는 런타임시에 문제가 생길 수 있지만, record는 자바 언어 수준에서 지원되므로 안정적이다.

Dto

DTO(Data Transfer Object)는 계층 간 데이터 전달을 위한 객체로, 주로 불변성을 유지하며 순수한 데이터만을 담는다.
record는 모든 필드를 final로 선언하고 자동으로 필요한 메서드를 생성하기 때문에 DTO의 역할에 매우 적합하다.

따라서 DTO를 record로 구성하면 다음과 같은 장점이 있다:

  • 불변 객체로써 안정적인 데이터 전달 가능
  • 명확한 목적(데이터 보관 및 전달)에 부합
  • 보일러플레이트 코드 제거로 코드 가독성 향상
  • Lombok에 의존하지 않고도 간결한 코드 작성 가능
profile
take the bull by the horns

0개의 댓글