inflearn logo
강의

講義

知識共有

非専門家でも理解できるDB設計入門・実践

[実習] 画面UIデザインを見てDB設計をしてみる - JSCODE TODOリスト

프론트단에서 고정 저장 / 백엔드에서 조회 저장

90

songsme28861502

投稿した質問数 19

0

데이터베이스에 저장해야 한가? 아닌가? 구분은

이 정보들이 자주 바뀌는 정보면 데이터 베이스에 저장을 해 놓는다.

프론트단에서 백엔드로 저 데이터를 받아와서 그때 그때 실시간으로 업데이트를 시키는 것이 훨씬 좋다?

 

이렇게 말씀하셨는데 고정일 경우에는 그냥 프론트 코드에서 고정 시켜서 연동하면 된다는 것으로 이해했습니다. 고정적이니까 백엔드까지 갈 필요 없이 프론트 코드에서 연동하면 된다는 것도 이해가 됩니다.

 

그런데 자주 바뀌면 백엔드에 저장한다? 이 말씀 자체가 이해가 안됩니다. 그러면 백엔드에서 해당 앱들에 대한 데이터들을 어떻게 연동한다는 것인지 이해가 안가요. Oauth를 통한 연동 이런 것을 말씀하시는 걸까요?

 

그런데 그러면 고정적일 때도 어짜피 연동은 해야하니까 백엔드에 하는 것이 맞지 않을까요?

데이터를 Db에서 주고 받는데 백엔드에서 처리하는게 맞지 않을까요?

 

제가 백엔드 개발자 신입이여서 자세히는 모르겠습니다. 설명 부탁드립니다.

mysql dbms/rdbms database dba

回答 1

0

jscode

안녕하세요 송 사무엘님 ! 질문 너무 잘 주셨어요 ㅎㅎ

질문 주신 내용에 대해 차근차근 설명드려볼게요 ~

 

"자주 바뀌면 백엔드에 저장해야 한다"는 말이 무슨 뜻인가요?

-> 이해하기 좋은 사용자 프로필 정보로 예를 들어 볼게요 !

사용자 이름, 이메일, 프로필 사진 등은 사용자 본인이 변경할 수 있죠!

"자주 바뀔 수 있는 데이터"니까, DB에 저장하고 백엔드 API를 통해 제공하면 좋아요 !

이렇게 하면 프론트에서는 항상 최신 데이터를 백엔드에서 받아올 수 있고,

변경 사항이 생기면 백엔드에 요청해서 업데이트을 하수 있어요 ~

즉, "변화가 생길 수 있는 데이터는 백엔드에서 책임지고 관리해야 한다"는 의미예요 :)

 

"Oauth 같은 걸 통해 연동한다는 말인가요?"

-> 강의 에서 말씀드린 "백엔드에 저장한다"는 건,

그 데이터를 DB에 저장해서 API로 내려주는 구조로 설계하라는 뜻이에요!

예를 들어 프론트에서 GET /users/me API를 호출해서

백엔드가 DB에서 사용자 정보 꺼내서 전달한다는 말이에요 :)

 

"그럼 고정된 데이터도 결국 연동하려면 백엔드에 저장해야 하지 않나요?"

-> 디테일한 상황과 데이터에 따라 다르지만,

일반적으로 고정된 데이터의 경우에는 연동을 한다고 해서 백엔드에 저장을 하진 않아요 !

예를 들어, "앱 내 ‘공지사항’ 섹션에 “앱 버전 1.0 출시!” 라는 문구",

"프론트 UI에 쓰이는 버튼 라벨 '더보기', '확인”'등"은 변경될 일이 거의 없고,

프론트 코드에 직접 하드코딩을 하는 게 더욱 효율적이에요 ~

 

실무적인 팁을 드리자면, 설계 초반에 힘을 너무 안주시고

당장의 시야에서 보이는 설계만 하셔도 전혀 문제가 없어요 !

나중에 바뀔 수 있을 것 같거나, 애매하다 싶으신 부분은 팀원과

"이 부분이 이렇게 해서 애매한것 같은데 어떻게 할까요 ?

DB로 관리하는게 좋을까요 아니면 프론트단에서 하드코딩하는게 좋을까요 ~?" 과 같이

소통하시며 디벨롭 시키는 것 또한 좋은 전략입니다 :)

 

추가로 궁금하신점 있으시면 편하게 질문주세요~~😄😄

진짜중복/가짜중복을 나누는데 있어서

0

33

2

규칙 1에 대해서

0

53

2

강사님도 실제로 구글 시트에 이런식으로 적으면서하는걸까요?!

0

56

2

만약 신고사유가 객관식 다운드롭형태일때는 테이블을 따로 분리하는건가요??

0

56

2

설문 후속강의 쿠폰 제공 이벤트에 대해서

0

76

2

FK 값 중복과 규칙 3 질의

0

76

2

7-42. 역정규화 섹션에 나온 참고글 링크

0

44

2

[JSCODE 쇼핑몰 (2)] 상품 테이블의 등록한 사람 질문 입니다.

0

48

1

몽고DB 강의 계획

0

80

2

게시글 작성자 Id(사용자 FK) 숫자가 맞나요?

0

96

2

UI를 보고 저장해야할 데이터인지 파악하는 팁이 있을까요?

0

97

2

안녕하세요 강사님 문의 사항이 있습니다

0

108

2

실제 개발에 들어가거나 서비스 운영 중에도 DB설계를 바꾸나요?

0

233

2

관리자 테이블

0

227

2

외래 키 지정은 필수가 아닌 건가요?

0

255

2

게시판 닉네임, 아이디 관련질문

0

126

2

개발자 및 DB 설계 관련 질문

0

155

1

중복데이터 질문 있습니다.

0

104

2

db 컬럼에 JSON 박아도 되나요?

0

311

2

erd 진짜 안그려도 되나요

0

276

2

그냥 하나씩 만들어나가면서 DB 설계를 그때그때 하는건 틀린건가요?

0

104

2

JSCODE 게시판에서 댓글 관련하여 설계

0

128

2

주문수량과 재고량 관련하여 테이블 분리시

0

197

2

todo데이터 테이블 설계 강의 질문있습니다.

0

115

2