Kotlin flow를 이용한 DTO / Domain class간 Mapping 처리 방법
이 글은 Medium의 "Redundant DTO-Domain Mapping in Kotlin Flow"를 번역 / 의역한 글입니다.[1] Project 내부에서 깔끔하고 side effect이 없는 코드를 만들기 위해 각 기능별 또는 모듈별로 Layer를 만들어 사용합니다. 예를들어 데이터를 fetching하는 네트워크 API나, DB의 정보를 가져오는 Room같은 경우 전달받는 날것 그대로의 데이터를 담기 위해 DTO 클래스를 만듭니다. 다만 실제 데이터를 가용하는 부분에서 이 DTO 클래스를 직접 넘겨받아 access하지 않습니다. 이 데이터를 실제로 사용되는 코드에서는 날것의 정보가 아닌 원하는 형태로 변환된 Domain class를 따로 정의하여 사용합니다. 즉 사용하는 부분의 layer를 나누..