-
20221205 TIL DTO in DTOTIL 2022. 12. 5. 13:38
주문 내역에는 상품 정보가 들어있다.
따라서 주문 내역을 출력하는 과정에서 받아와야 하는 값이 너무 많았다.
보기만해도 무언가 문제가 있다고 느껴졌고, 하나라도 순서가 틀리면 안되는데, 일단 만들어두었지만 매우 불안한 코드였다.
마침 비슷한 고민을 담고 있는 질문에 아샬님의 답변이 달렸다.
이 답변을 바탕으로 OrderDto가 ProductDto를 담고있는 방식으로 리팩토링을 해보았다.
Product와 관련된 내용은 묶여있어 훨씬 보기도 좋고,
관심사에 따라 묶여 있어 좋고, 순서도 훨씬 덜 헷갈리게 바꿀 수 있었다.
DTO안에 DTO를 사용하면 이렇게 product는 관련된 것들이 묶인 형태의 JSON을 응답받을 수 있게 된다.
추가로, 만약 반환받는 JSON의 key값을 바꾸고 싶다면 DTO getter에서 get뒷부분을 수정해주면 된다는 점도 알게 되었다!
앞으로도 관련이 있는 값은 DTO로 묶어서 DTO안에서 처리를 하면 좋을 것 같다.
'TIL' 카테고리의 다른 글
20221207 TIL 트렌디한 페이지네이션 구현하기 (0) 2022.12.07 20221206 TIL 평정심 유지하기 (0) 2022.12.06 20221204 TIL 포기하지 않고 조금씩 앞으로 나아가자 (2) 2022.12.04 20221203 TIL 테스트의 독립성을 어떻게 보장하면 좋을까? (1) 2022.12.03 20221202 TIL 더 나은 형상 관리를 위하여 (0) 2022.12.02