Dto
Json 데이터를 모델 클래스까지 전달하는 중간 단계 역할을 하는 객체
→ 데이터 전송(이동) 객체
Dto를 사용하는 이유
Model Class 는 non-nullable 한 값만 가지고 있는 것이 좋음
Json 데이터는 null 값을 포함할 수 있음
Map -> Model Class 변환시 null 값 등의 예외를 사전에 걸러내기 용이함
불완전한 코드가 포함될 것 같다면 Dto를 도입
Json 값에 예외가 없다면 반드시 Dto를 도입할 필요는 없다
Dto 는 json to dart 플러그인 활용하여 nullable 을 담도록 만든다
Model Class 는 꼭 필요한 내용만 직접 JsonSerialization 등의 라이브러리를 사용하여 만든다 (또는 ChatGPT)
Dto to 모델 클래스가 되는 메서드를 작성하고 활용