ERD를 설계해보자 (24.05.03)

YJ·2024년 5월 3일
post-thumbnail

블로그 작성법
목표 > 공부한 내용 > 얻었고, 앞으로 이걸 해봐야지 적기

✋ 수업 목표

  • HTTP 통신 시 객체로 전달하는 이유가 무엇일까?

🤔 공부한 내용

왜 객체로 전달하는가?

상품 정보
String name, int price, String description

나는 이렇게 할건데? vs 객체 필드로 모아주면 좋겠는데?

리팩토링 기법 -> 클린 코드 만드는 방법

  1. 모든 클래스에서 같은 의미를 가지는 동사는 통일
  2. 명명법: 이 클래스(계층)가 누구에게 가까운지
  • Controller: Client (user) find get
    조회 API : 상품 정보 "찾고" / "뿌려주는" 목적 find get
    등록 API : register, save, create
  • Service: 비즈니스 로직 Client (user) / 시스템 find get
    register, save, create
  • Repository: DB find / create, save
    원하는 데이터를 "찾는다" / 갖는다
    => 코드 컨벤션: 팀 단위 '조회' find ' /
    "영어처럼 읽히면 그 코드는 아름답다." - 명언

ERD 실습

주문 - 상품(id, name, price, description)

자료
https://dbdiagram.io/home

사용 방법
https://saakmiso.tistory.com/34

내 생각
N : N 관계이다.

주문 1개에 상품이 여러 개 담길 수 있고,
주:상 = 1:N

상품 1개에 주문이 여러 개 담길 수 있다.
상:주 = 1:N

도메인 실습

기본: 음식, 회원(JWT), 식당, 카테고리, 주문

조회: 음식 조회하는데, 식당 조회하는데, 카테고리 조회하는데는 JWT 필요 없음.
주문하는 경우에는 JWT 필요 있음.

JWT는 쿠키에 담아서 프론트에서 줘야 한다.

기본 도메인을 먼저 구성한 후에 확장성으로 장바구니, 옵션, 리뷰와 같은 서브 도메인 들을 구성하자.

"무엇" 합격 당락 => "왜" 치명적
- 프로젝트 애자일 vs 폭포수
- 금융권: 프로젝트 체계
- Q. 회사 체계를 무시해야하는 상황 vs 체계를 따를 건지

직무 면접
- 언어, 설계를 공부하는 방법

😉 앞으로 이걸 해봐야지

오늘은 도메인과 ERD에 대해 배우는 시간을 가졌다. 앞으로 백엔드를 공부하면서, 비즈니스의 기본 도메인 부터 구한 후, 도메인에 대한 ERD를 설계해볼 것 이다.

profile
dev

0개의 댓글