[TIL] Value Object

Cherry Jin·2024년 1월 25일
0

sparta_내배캠

목록 보기
44/53
post-thumbnail
  • 도메인 주도 설계에서 사용되는 개념
  • 비즈니스 개념을 모델링하거나 시스템 내에서 데이터를 전달하는데에 사용되는 객체

VO는 도메인 객체의 일종으로, 기본키와 식별값을 갖는 entity와는 구별된다.

튜터님의 간략한 설명으로는 사용자 토큰과 관련된 데이터를 캡슐화해서 사용하는 것이 가능하다고 한다.

  • 이런 경우 사용자 인증 과정에서 생성되는 accessToken 과 refreshToken과 같은 정보를 담을 수 있다.

    UserTokenVO의 사용 예

  1. 로그인 또는 사용자 인증 과정에서 생성되어 클라이언트에게 반환된다.
  • 사용자가 로그인 요청을 하면 서버는 사용자의 자격 증명을 검증한 후 UserTokenVO를 생성해서 반환한다.

  • UserTokenVO는 토큰을 포함하고 있어 클라이언트는 이 정보를 사용해 후속 api에서 사용자 인증을 수행할 수 있다.

    UserTokenVO 사용할 경우 장점

  • 보안 : 사용자 인증 정보를 안전하게 처리하고 관리

  • 효율성 : 토큰 기반 인증은 서버 부하를 줄일 수 있다.

  • 유연성 : 다양한 클라이언트에서 인증과정을 일관되게 처리할 수 있다.

  • 유지 관리성 강화 : 모든 관련 토큰 정보가 일관되게 처리된다.

    //UserTokenVO 사용예시
    class UserTokenVO {
       readonly accessToken: string;
       readonly refreshToken: string;
    
       constructor(accessToken: string, refreshToken: string, accessTokenExpiry: Date, refreshTokenExpiry: Date) {
           this.accessToken = accessToken;
           this.refreshToken = refreshToken;
       }
    }
    
profile
풀스택이 되버린 주니어 개발자

0개의 댓글