분산 응용 프로그램을 설계했을때 단일 클라이언트의 요청을 충족하기 위해 원격 인터페이스에 여러 번 호출해 응답 시간이 허용 가능한 수준 이상으로 늘어났나면??
그래서 나온 해결책이 DTO다.
Data Transfer Object의 약자로 데이터를 전송을 위해 생성되는 객체를 말한다.
원격 호출(네트워크를 통과해야하는 호출)은 느리다.
프레임워크가 원격 호출의 복잡성을 숨길 수는 있지만, 통신이 발생하는데 필요한 단계는 제거할 수 없다. 주의를 기울이지 않는다면 중요한 개인 정보 등이 노출 될 수 있다.
원격 호출에 필요한 모든 데이터를 보유하는 DTO를 만든다.
DTO를 단일 매개변수로 수락하고 DTO 매개변수를 클라이언트에 반환하도록 원격 메서드를 만든다.