[NHN] 최종 과제 시작

2024. 10. 23. 17:29·CNU SW 아카데미/15주차(최종 프로젝트)

최종 과제 진행

첫 주에 ERD 설계를 진행했습니다.

 

우선 결과물 먼저 보여 드릴게요.

최종 완성까지는 아니지만 프로젝트 시작 시점에서의 ERD

# 고객(비회원), 회원

고객(비회원)과 회원 테이블 관련해서 고민이 정말 많았습니다.

왜냐하면 비회원의 경우 비밀번호를 데이터베이스에 저장하자니 영구적인 로그인/로그아웃에서의 데이터로 역할을 수행하지 않을 것이고

비회원으로 도서를 주문했다고 하더라도 회원으로 가입해 버리면 새롭게 비밀번호를 생성해 줄 것 같았습니다.

기존의 비밀번호를 세팅하는 것은 불변성에 어긋난다고 생각했습니다.

 

그래서 고객 테이블과 회원 테이블은 아예 따로 둘 것인가부터 생각하기도 했고(이럴 경우 다른 주문, 도서 등의 테이블에 각각 연결해 줘야 함)

고객과 회원을 어떻게 구별해서 판단할 것인가 생각하자니 테이블이 따로따로니까 맨 처음부터 구별될 거 같고 .. 등등 고민이 많았습니다.

 

 

결국 고객은 고객(비회원)이고 회원은 회원이면서 고객(비회원)이기도 한 상태의 위와 같은 방식으로 결정했습니다.

 

  • 고객 같은 경우 비회원으로서 필요한 컬럼만 입력받아 저장해 두기로 했고
  • 회원의 경우 좀 더 세부적인 내용들 컬럼에 저장해 두고 비밀번호 테이블을 따로 두어서 회원 테이블에 바로 접근하는 것이 아니라
  • 회원 PK를 통해서 비밀번호 테이블에 그 회원이 가진 비밀번호를 가져 올 수 있도록 하는 것으로 생각했습니다.

이렇게 한 이유는 비밀번호의 경우 따로 테이블로 관리했을 때 회원 테이블 수정 시에 비밀번호를 수정하거나 삭제하게 되지 않는다는 장점이 있다고 생각했기 때문입니다.

 

 

 

 

# 이미지

또 이미지 url을 어떻게 관리할 것인가에 대해서도 여러 번 수정했습니다.

처음에는 각 테이블 안에서 url 컬럼을 두고 관리할까 생각했는데 이렇게 되면 하나의 테이블에 url 컬럼이 한 줄 들어가게 되니 여러 개의 이미지 url을 두기가 어려워진다는 것이 하나의 단점이었습니다.

 

그래서 url만을 관리할 테이블을 따로 두고 도서, 리뷰 등과 다대일 관계로 풀었습니다.

이렇게 하면 여러 개의 이미지를 삽입하기 용이해지고 도서와 관련된 것은 도서 연결 테이블로 통하게 하고 나머지도 각각의 테이블과 통하게 해서 구분하기 쉽게 만들었습니다.

 

 

 

 

# 개발

제가 맡은 부분은

크게 4가지입니다.

  • CI/CD, 무중단 배포
  • 도서 카테고리 서비스
  • 포인트 서비스
  • 관리자 서비스

 

'CNU SW 아카데미 > 15주차(최종 프로젝트)' 카테고리의 다른 글

[NHN] CI/CD 전체 설정 완전 사이클  (0) 2024.10.29
[NHN] Github Action CI/CD  (0) 2024.10.23
'CNU SW 아카데미/15주차(최종 프로젝트)' 카테고리의 다른 글
  • [NHN] CI/CD 전체 설정 완전 사이클
  • [NHN] Github Action CI/CD
하가네
하가네
  • 하가네
    하 렌
    하가네
  • 전체
    오늘
    어제
    • 분류 전체보기 (93)
      • Computer Science (23)
        • 운영체제 (7)
        • 데이터통신 (6)
        • 자료구조 (4)
        • 논리회로 (0)
        • 확률 및 통계 (0)
        • 데이터베이스 (2)
        • AI소프트웨어 (3)
        • 컴퓨터네트워크 (1)
      • Language (0)
        • Java (0)
      • Framework (8)
        • Spring (8)
      • Tips (2)
        • 터미널 명령어 (1)
        • 우분투 명령어 에러 (1)
      • SSA (6)
        • Front (1)
        • Back (4)
        • DB (0)
        • 기획 (1)
      • 우아한테크코스 (0)
        • 7기 프리코스 (0)
      • CNU SW 아카데미 (42)
        • 1주차 (5)
        • 2주차 (5)
        • 3주차 (2)
        • 4주차 (1)
        • 5주차 (3)
        • 6주차 (2)
        • 7주차 (0)
        • 8주차 (1)
        • 9주차 (14)
        • 10주차 (0)
        • 11주차 (1)
        • 12주차 (0)
        • 13주차 (2)
        • 14주차 (2)
        • 15주차(최종 프로젝트) (3)
        • 최종 프로젝트 이후 (1)
      • 모각코 (6)
        • 2023 동계 (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.
하가네
[NHN] 최종 과제 시작
상단으로

티스토리툴바