카테고리 없음

예상질문 : ResponseDto && Vo

8나지 2024. 8. 26. 23:35

<ResponseDto>

ResponseDto는 소프트웨어 개발에서 주로 사용되는 데이터 전송 객체(Data Transfer Object, DTO)로, 일반적으로 API 응답을 정의하는 데 사용됩니다. DTO는 서로 다른 시스템이나 계층 간에 데이터를 전송할 때 사용하는 객체로, 주로 데이터의 구조를 정의하고 데이터의 전송을 효율적으로 처리하기 위해 사용됩니다.

ResponseDto는 주로 다음과 같은 역할을 합니다:

더보기

1. 데이터 구조 정의

  • ResponseDto는 API 호출의 응답 데이터 형식을 정의합니다. 예를 들어, 사용자 정보, 오류 메시지, 작업 결과 등 다양한 응답 데이터를 구조화하여 클라이언트에게 전달합니다.

2. 표준화된 응답

  • 모든 API 응답이 일관된 형식을 갖추게 하여 클라이언트가 응답을 쉽게 처리하고 이해할 수 있도록 돕습니다. 예를 들어, 모든 응답이 status, message, data와 같은 필드를 포함할 수 있습니다.

3. 유효성 검증

  • 응답 데이터의 유효성을 검증할 수 있는 필드나 메서드를 포함할 수 있습니다. 이를 통해 데이터의 일관성을 유지하고, 클라이언트가 오류나 예외 상황을 처리할 수 있도록 합니다.

4. 보안 및 민감한 정보 숨기기

  • 응답에 포함할 데이터의 종류를 제어함으로써 민감한 정보를 클라이언트에게 노출하지 않도록 할 수 있습니다. 예를 들어, 데이터베이스의 내부 구조나 비밀번호와 같은 민감한 정보를 숨길 수 있습니다.

우리의 ResponseDto && Vo : 컨벤션 으로 사용했음 

 ResponseDto : API 응답을 일관되게 처리하기 위해 사용, TypeScript로 작성 데이터 전송 객체(Data Transfer Object). 이 클래스는 API 응답의 구조를 정의. 

 


1. DTO , Vo는 무엇인지  :

  • ResponseDto: 주로 API 응답 위한 데이터 전송 객체로 사용됩니다. 클라이언트와 서버 간의 데이터 교을 위해 설계되었습니다.
  • Vo (Value Object): 특정 도메인에서 의미 있는 값을 표현하는 객체로, 주 불변성을 가지며, 비즈니스 직을 포함할 수 있습니다.

2. 차이점은 무엇인지  :

  • ResponseDto: 일반적으로 API의 요청 및 응답 구조를 정의하며, 필요한 필드만 포함합니다.
  • Vo: 도메 모델의 속성을 나타내며, 특정 즈니스 규칙을 반영할 수 있습니다.

3. 왜 사용했는지?

 

- 변경 가능성:

  • ResponseDto: 필요에 따라 변경될 수 있습니다.
  • Vo: 불변성을 유지하며, 생성 후 변경되지 않습니다

이러한 차이로 인해  객체는 서로 다른 상황에서 사용됩니다.

 

: 우리는 컨벤션으로 사용하였으며 데이터의 응답값을 명확히 하기 위해 정했다고 볼 수 있음.  DTO는 값을, Vo는 타입을 지정해주는 듯 함