서버와 데이터베이스는 왜 필요할까?
방명록에 쓴 글이 내 화면에서만 보인다면? 여러 사람이 함께 보는 데이터에는 '공용 창고'가 필요해요.
🎯 이번 레슨을 마치면
- 브라우저 저장과 데이터베이스의 차이를 설명할 수 있다
- 프론트엔드, 백엔드, 데이터베이스, API의 역할을 안다
직접 확인: 브라우저 저장의 한계
아래 방명록에 글을 남겨 보세요. 새로고침해도 남아 있어요. 그런데…
브라우저에만 저장되는 방명록
Ctrl+Enter 실행
실행 결과
▶ 실행 버튼을 누르면 여기에 결과가 나타나요
콘솔
console.log()로 출력한 내용이 여기에 나타나요
해결: 모두가 쓰는 공용 창고
데이터베이스는 데이터를 엑셀 표처럼 저장해요. 이 표를 테이블테이블 (Table)데이터베이스에서 데이터를 행(줄)과 열(칸)로 정리한 표예요.이라고 해요.
| id | 이름 | 남긴 말 | 쓴 시각 |
|---|---|---|---|
| 1 | 민지 | 사이트 예뻐요! | 2026-11-03 10:12 |
| 2 | 도윤 | 고양이 그림 최고 | 2026-11-03 11:40 |
누가 무슨 일을 하나요?
프론트엔드 화면 · 글쓰기 버튼
API 주문 창구 · JSON으로 주고받기
백엔드 규칙 확인 · 로그인 검사
데이터베이스 공용 장부 · 테이블
| 이름 | 하는 일 | 식당으로 치면 |
|---|---|---|
| 프론트엔드프론트엔드 (Frontend)사용자 눈에 보이는 화면 부분을 만드는 일이에요. HTML, CSS, JavaScript를 써요. | 사용자가 보는 화면 | 홀과 메뉴판 |
| APIAPI프로그램끼리 데이터를 주고받기 위해 정해 둔 창구예요. | 화면과 서버가 데이터를 주고받는 창구 | 주문 창구 |
| 백엔드백엔드 (Backend)눈에 보이지 않는 서버, 데이터 저장, 로그인 처리 등을 만드는 일이에요. | “이 사람이 써도 되나?” 확인하고 처리 | 주방 |
| 데이터베이스 | 데이터를 안전하게 보관 | 창고와 장부 |
데이터는 보통 JSONJSON데이터를 주고받을 때 많이 쓰는 글자 형식이에요. 예: {"name": "민지"}이라는 글자 형식으로 주고받아요.
{ "name": "민지", "message": "사이트 예뻐요!" }
퀴즈
친구들이 남긴 방명록 글을 모든 사람이 볼 수 있게 하려면 어디에 저장해야 할까요?
📝 정리해 볼까요?
- 브라우저에 저장한 데이터(localStorage)는 그 브라우저에서만 보여요. 여러 사람이 함께 보려면 데이터베이스가 필요해요.
- 데이터베이스는 엑셀 표처럼 테이블(행과 열)로 데이터를 저장하는 공용 창고예요.
- 프론트엔드(화면)는 API라는 창구를 통해 백엔드·데이터베이스와 JSON 형식으로 데이터를 주고받아요.
📖 새로 나온 용어
- 데이터베이스 Database
- 많은 데이터를 체계적으로 저장하고 빠르게 찾을 수 있게 정리한 저장소예요. 비유: 창고 장부
- 테이블 Table
- 데이터베이스에서 데이터를 행(줄)과 열(칸)로 정리한 표예요. 비유: 엑셀 시트 한 장
- 프론트엔드 Frontend
- 사용자 눈에 보이는 화면 부분을 만드는 일이에요. HTML, CSS, JavaScript를 써요. 비유: 식당 홀과 인테리어
- 백엔드 Backend
- 눈에 보이지 않는 서버, 데이터 저장, 로그인 처리 등을 만드는 일이에요. 비유: 식당 주방과 창고
- API
- 프로그램끼리 데이터를 주고받기 위해 정해 둔 창구예요. 비유: 식당 메뉴판과 주문 창구
- JSON
- 데이터를 주고받을 때 많이 쓰는 글자 형식이에요. 예: {"name": "민지"} 비유: 모두가 읽을 수 있는 표준 서식
- localStorage
- 브라우저 안에 작은 데이터를 저장하는 공간이에요. 새로고침해도 남아 있어요. 비유: 브라우저 안의 작은 서랍
잘했어요! 완료 표시는 이 브라우저에 저장돼요.