Spring,SpringBoot

DTO 변환과정 convert 패턴으로 처리

Lahezy 2023. 4. 30.
728x90

틀린 부분 조언 해주시면 감사하겠습니다 😄

기존코드

 

기존에는 컨트롤러 내에서 DTO로 변경하는 메서드를 이용해서 변경 후에 리턴하도록 코드를 구성하였었다.

하지만 다른 개발자 분들의 코드들을 찾아보다 보니 객체 내에서 toConvert라는 메서드를 구성하여 리턴하는 방식을 사용한다는 것을 알게 되었다.

 

생각해 보니 기존에 컨트롤러 내에서 메서드로 변환하는 방식은 해당 컨트롤러에서만 사용하는 방식이고 만약 다른 코드에서 사용하려 하면 또 메서드를 선언해야 하여 코드 중복이 발생하고, 객체 지향적이지 않은 코드라는 생각이 들었다. 

 

따라서 코드를 아래와 같이 convert 메서드를 객체 내에 두어서 객체 지향적이고 코드의 중복을 줄일 수 있는 방법으로 수정하였다. 

 

수정 코드

 

고민

1. convert 클래스를 따로 분리하는 방법

2. static으로 convert 메서드 선언하는 방법

 

github : https://github.com/juhee77/share-anything

참고 : https://www.javaguides.net/2018/08/converter-design-pattern-in-java.html

728x90

댓글