๋ณธ ํ๋ก์ ํธ๋ SSAFY ํนํํ๋ก์ ํธ ๊ธฐ๊ฐ ๋์ ๊ธฐํยท์ค๊ณยท๊ฐ๋ฐ๋ ํ๋ก์ ํธ๋ก์จ ์ฝ๋ ๋ฐฐํฌ๋ ๊ธ์ง๋์ด ์ฒจ๋ถํ์ง ์๊ณ , README ๋ก๋ง ์ ์ ๊ฐ๋ฐ ๊ธฐ๋ก์ ์์ฑํฉ๋๋ค.
๊ด๋ จํ์ฌ dojinuk@kakao.com์ผ๋ก ์ฐ๋ฝํด์ฃผ์๋ฉด, ๋น๋ฐ ์ ์ง ์ฌํญ์ ๋ฒ์ด๋์ง ์๋ ๋ด์์ ๊ถ๊ธํ ๋ด์ฉ ํด๊ฒฐํด๋๋ฆด ์ ์๋๋ก ํ๊ฒ ์ต๋๋ค.Outline : '2022๋ 8์ 22์ผ ~ 2022๋ 10์ 7์ผ'์ 7์ฃผ๋ผ๋ ๊ธฐ๊ฐ ๋์, ์ผ์ฑ ์ฒญ๋ ์ํํธ์จ์ด ์์นด๋ฐ๋ฏธ์ ํนํ ํ๋ก์ ํธ๋ฅผ ์ํํ์๋ค. ์ฐ๋ฆฌ ํ์ ์ด 5๋ช ์ด๋ค. ์ฐ๋ฆฌ๋ '๋น ๋ฐ์ดํฐ ์ถ์ฒ'์ด๋ผ๋ ๋๋ฉ์ธ์ ์ ํํ์๊ณ , '๋น ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์ ํต์ฃผ ์ถ์ฒ ์น ์๋น์ค'๋ฅผ ๊ธฐํํ์๋ค. ๊ฐ๋ฐ ๊ณผ์ ์์๋ 2๋ช ์ Front-end์ 3๋ช ์ Back-end๋ก ๋๋์ด ๊ฐ์ ์ญํ ์ ์ํํ์๊ณ , ๊ทธ ๊ฒฐ๊ณผ '์ฐ๋ฆฌ๋ค์ ์ ํต์ฃผ, ์ฐ์ฃผ'๋ผ๋ ๊ฒฐ๊ณผ๋ฌผ์ ์ ๋ณด์ผ ์ ์๊ฒ ๋์๋ค.
7์ฃผ๋ผ๋ ๊ธฐ๊ฐ๋์ ์ฐ๋ฆฌ ํ์ด ์๋ก ๋์์ฃผ๋ฉฐ ๋ง๋ค์ด ๋ธ ๊ฒฐ๊ณผ๋ฌผ์ด๊ธฐ์ ๊ทธ๋งํผ ์ ์ ๋ ๊น๋ค. ๊ทธ๋ฐ ๋งํผ ์ด ๋ฌธ์์์ ํ๋ก์ ํธ์ ๋ํด ์์ธํ๊ฒ ์์ ํด ๋ณด๊ณ ์ ํ๋ค.
์๋ฒ๊ฐ ์ ๊ณต๋๋ ๊ธฐ๊ฐ ๋์ ๋ค์ ์ฃผ์ ๊ฒ์์ฐฝ์ ๋ค์๊ณผ ๊ฐ์ด ์ ๋ ฅํ๋ฉด '์ฐ๋ฆฌ๋ค์ ์ ํต์ฃผ, ์ฐ์ฃผ'๋ฅผ ๋ง๋ ์ ์์ต๋๋ค.
์๋์ ๋ฐฉ๋ฒ์ผ๋ก๋ ๊ฐ๋ฅํฉ๋๋ค.
git bash ํฐ๋ฏธ๋์ ๋ค์๊ณผ ๊ฐ์ด ์ ๋ ฅํฉ๋๋ค.
git clone https://lab.ssafy.com/s07-bigdata-recom-sub2/S07P22A402.gitbackend ํด๋ ๋ด์์ ํฐ๋ฏธ๋์ ์ผ ํ ๋ค์์ ์ ๋ ฅํ์ฌ ์๋ฒ๋ฅผ ์คํํฉ๋๋ค. (clone ๋ฐ์ ํด๋ ์์น์์ IDE๋ฅผ ์ผ๋ ๊ฒ์ ๊ถ์ฅํ๋ฉฐ, ์์์ ์ด์ด์ ํด๋ ๋ฌด๋ฐฉํฉ๋๋ค.)
python -m venv venv source venv/Scripts/activate pip install -r requirements.txt python manage.py makemigrations && python manage.py migrate python manage.py runserverfrontend ํด๋ ๋ด์์ IDE๋ก ์คํํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ , ์ต์๋จ์ ์์นํ .envํ์ผ์ ์ด์ด ๋ค์๊ณผ ๊ฐ์ด ์์ ํฉ๋๋ค.
REACT_APP_BASE_URL = http://localhost:8000์ด์ด์ ํฐ๋ฏธ๋์ ์ผ ํ, ๋ค์์ ์ ๋ ฅํ์ฌ ์คํํฉ๋๋ค.
npm install && npm start๊ทธ๋ ๊ฒ ํ๋ค๋ฉด '์ฐ๋ฆฌ๋ค์ ์ ํต์ฃผ, ์ฐ์ฃผ'๋ฅผ ๋ง๋ ์ ์์ต๋๋ค.
-
Front-end
-Nivo (๋ฐ์ดํฐ ๊ทธ๋ํ/์ฐจํธ ๋ณํ)
Nivo/bar : 0.80.0
Nivo/core : 0.80.0
Nivo/pie : 0.80.0
Nivo/radar : 0.80.0
-React Router DOM
react-router-dom : 6.4.0
-Axios
Axios : 0.27.2
-MUI MUI/material : 5.10.6
MUI/icons-material : 5.10.6
-๊ธฐํ
sweetalert : 2.1.2 (์๋ฆผ์ฐฝ)
styled-components : 5.3.5 (๋์์ธ)
swiper : 8.4.2 (์ด๋ฏธ์ง ์นด๋ ํํ)
-
Back-end
Django : 4.1.1
Python : 3.10.4
Anaconda : 4.14.0
pip : 22.2.2
-
Work day 09:00 or 10:00 ์คํฌ๋ผ ํ์
(์๋ 2022๋ 9์ ํ๋ฌ๊ฐ์ ํ์ ๋ฌ๋ ฅ์ ๋๋ค.)
-
Webex, Discord๋ฅผ ์ด์ฉํ ์ค์๊ฐ ์ํฉ ๊ณต์
-
Git Lab์ ์ด์ฉํ ํ์
-
Notion์ ์ด์ฉํ ๋ฌธ์ ์ ๋ฆฌ ๋ฐ ๊ณต์
| ํ์ | ์ญํ |
|---|---|
| ํ์ฌ์น | Front-end, ํ์ฅ |
| ๋์ง์ฑ | Front-end, UI/UX |
| ๋ฐ์ง์ | Back-end, ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ, UI/UX |
| ์กฐํ์ง | Back-end, Front-end |
| ์ต์งํ | Back-end, Server |
-
์์์ด ๋ง์ ์์ด๋์ด๋ค ์ค์์ 2์ฃผ ๊ฐ์ ๊ธฐํ๊ธฐ๊ฐ ๋์ ํ์ํ ๋์ ๋ค์๊ณผ ๊ฐ์ด ๊ธฐํํ ์ ์์์ต๋๋ค.
(๋ค์์ ํ Notion ํ์ด์ง ๋ด์ ๊ธฐํ ์์ด๋์ด ์ ๋ฆฌ ์ค ์ผ๋ถ์ ๋๋ค.)
-
๋ํ ๋น ๋ฐ์ดํฐ ์ถ์ฒ์ด๋ผ๋ ๋๋ฉ์ธ์ด๋ฏ๋ก, ํด๋น ๋ฐ์ดํฐ๊ฐ ์๋์ง ์กฐ์ฌํ ์ ์์์ต๋๋ค.
(๋ค์์ ํ Notion ํ์ด์ง ๋ด์ ๋ฐ์ดํฐ ์ ๋ฆฌ ์ค ์ผ๋ถ์ ๋๋ค.)

-
์ฌ์ฉ์๋ค์ ์ ํ์ ํ์ ํ์ฌ ๊ทธ์ ๋ง๊ฒ ์ถ์ฒํด ์ค ์ ์๋ ์ฌ์ ์ค๋ฌธ ๋ํ ๊ธฐํํ์์ต๋๋ค.
(๋ค์์ ํ Notion ํ์ด์ง ๋ด์ ์ ํ๊ฒ์ฌ ์ง๋ฌธ ์ ๋ฆฌ ์ค ์ผ๋ถ์ ๋๋ค.)
-
๊ธฐ๋ฅ ๋ช ์ธ์ ์์ฑ
(๋ค์์ ํ Notion ํ์ด์ง ๋ด์ ๊ธฐ๋ฅ ๋ช ์ธ์ ์ ๋ฆฌ ์ค ์ผ๋ถ์ ๋๋ค.)
-
API ๋ช ์ธ์ ์์ฑ
(๋ค์์ ํ Notion ํ์ด์ง ๋ด์ API ๋ช ์ธ์ ์ ๋ฆฌ ์ค ์ผ๋ถ์ ๋๋ค.)
๊ฐ๋ฐ์ ์งํํ๋ฉด์ Git Lab ๋ด์์ Git-Flow๋ฅผ ํ์ฉํ์ฌ ํจ์จ์ฑ์ ๋์ผ ์ ์์๋๋ฐ, ๊ทธ ์์๊ฐ๊ณ ๋ํ๊ฐ๋ ๊ณผ์ ์์์, ์ฐ๋ฆฌ๋ Webex๋ Discord๋ฅผ ํตํด ์ค์๊ฐ์ผ๋ก ์ํตํ๋ฉฐ ํ๋ ฅํ ์ ์์๋ค.
๋ํ ํ Notion ํ์ด์ง๋ฅผ ์ ์ฉํ๊ฒ ๋ค๋ค๋ค๊ณ ์๊ฐํ๋๋ฐ, ๊ทธ ์์์ ์ฐ๋ฆฌ๋ ๊ฐ์๊ฐ ๊ฒช์๋ ์ด๋ ค์์ ํด๊ฒฐํ ๋ฐฉ๋ฒ์ด๋ ์ ์ตํ ๋ ํผ๋ฐ์ค๋ฅผ ๊ณต์ ํ ์ ์์๋ค.
-
Back-end
(๋ค์์ ํ Notion ํ์ด์ง ๋ด์ BE ๊ณต์ ๊ฒ์ํ ์ค ์ผ๋ถ์ ๋๋ค.)
-
Front-end
(๋ค์์ ํ Notion ํ์ด์ง ๋ด์ FE ๊ณต์ ๊ฒ์ํ ์ค ์ผ๋ถ์ ๋๋ค.)
-
๋ฉ์ธํ์ด์ง
-
์ฌ์ฉ์์๊ฒ '์ค์๊ฐ ์ข์์ ์์', '์ต๊ทผ ๋ฆฌ๋ทฐ๊ฐ ์์ฑ๋ ์ ํต์ฃผ', '๋์ ๋น์ทํ ์ ์ ๋ค์ด ์ ํํ ์ ํต์ฃผ' ๋ชฉ๋ก์ ๋ณด์ฌ์ค์ผ๋ก์จ ๋ค์ํ ๋ฐฉ๋ฒ์ผ๋ก ์ ํต์ฃผ์ ๋ํด ์ ๊ทผํ ์ ์๋๋ก ํ์๋ค.
-
-
๊ฒ์ ํ์ด์ง
-
์์ธ ํ์ด์ง
-
์๋น์ค๋ฅผ ์ด์ฉ ์ค '์ ํต์ฃผ ์นด๋'๋ฅผ ์ด์ฉํ๋ฉด ํด๋น ์ ํต์ฃผ์ ์์ธ ํ์ด์ง๋ก ์ด๋ํ๋ค.
-
์ด๋ก ์ธํด ์ฌ์ฉ์๋ ์ ํต์ฃผ์ ์ ๋ณด๋ฅผ ํ์ ํ ์ ์๋ค.
-
์์ธ ํ์ด์ง ๋ด์์๋ ๋ฆฌ๋ทฐ๋ฅผ ๋จ๊ธธ ์๋ ์์ผ๋ฉฐ, ๋ค๋ฅธ ์ ์ ๋ค์ด ๋จ๊ธด ๋ฆฌ๋ทฐ๋ฅผ ํ์ธํ ์ ์๋ค.
-
๊ตฌ๋งคํ๋ฌ ๊ฐ๊ธฐ ๋ฒํผ์ ๋๋ฌ '๋ค์ด๋ฒ ์ผํ'์ผ๋ก ๋ฐ๋ก ์ด๋ํ ์ ์๋๋ก ํ์๋ค.
-
์ ํต์ฃผ์ ๋ํ ์์นํ๋ ์ ๋ณด๋ฅผ ๊ทธ๋ํ๋ก ํํํ์๋ค.
-
ํด๋น ์ ํต์ฃผ์ ์ ์ฌํ ์ ํต์ฃผ๋ ๋์ด๊ฐ๋ ์นด๋ ํ์์ผ๋ก ํ์๋์ด ์ฌ๋ฏธ์๊ฒ ์ฌ์ฉ์๊ฐ ์ ํ ์๋ ์์ผ๋ฉฐ, ์ ์ตํ ์ ๋ณด๋ฅผ ์ฝ๊ฒ ์ป์ ์ ์๊ฒ ํ์๋ค.
-
-
์ถ์ฒ ํ์ด์ง
-
์ถ์ฒ ํ์ด์ง๋ ํ๋ก์ ํธ ๋ช ๋ต๊ฒ ์ฐ์ฃผ์์ ์ถ์ฒ์ ๋ฐ๋๋ค๋ ์ปจ์ ์ผ๋ก ๋์์ธํ ์ ์์๋ค. ์ด๋ก ์ธํด ์ฌ์ฉ์๋ ๋ณด๋ค ์ฌ๋ฏธ์๊ฒ ์๋น์ค๋ฅผ ์ฌ์ฉํ ์ ์์ ๊ฒ์ด๋ค.
-
'์ถ์ฒ ๋ฐ์ผ๋ฌ ๊ฐ๋ ํ์ฑ', '์ ํต์ฃผ ํ๊ฐํ๋ ํ์ฑ', '๊ฐ๋จํ ์ถ์ฒํด์ฃผ๋ ํ์ฑ'์ผ๋ก ์ถ์ฒ ๊ธฐ๋ฅ์ ๊ตฌํํ ์ ์์๋ค.
-
์ฌ์ฉ์๋ ๊ฐ ๋ชฉ์ ์ ๋ง๊ฒ ํ์ฑ์ ๋ค์ด๊ฐ์ ์๋น์ค๋ฅผ ์ ๊ณต๋ฐ์ ์ ์๋ค.
-
์ถ์ฒ ํ์ด์ง
-
๋ด๊ฐ ๋จ๊ธด ๋ฆฌ๋ทฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋ก์ด ์ ํต์ฃผ ๋ชฉ๋ก ์ถ์ฒ ๋ฐ๊ธฐ
-
์ ํต์ฃผ๋ฅผ ๊ฒ์ํ์ฌ, ๊ฐ๋จํ ํ๊ฐ ๋จ๊ธฐ๋ ๊ธฐ๋ฅ
-
์ฌ์ฉ์์ ์ทจํฅ์ ํ์ํ ์ ์์ผ๋ฉฐ, ์ด๋ก ์ธํด ์ผํ์ฑ ์ถ์ฒ ๊ฒฐ๊ณผ๋ฅผ ์ ๊ณตํ๋ค.
-
์ฌ์ฉ์๋ ์ด 5๊ฐ์ง์ ์ ํต์ฃผ ๋ชฉ๋ก์ ์ ๊ณต๋ฐ์ ์ ์๋ค.
- ๋ง์ฝ '๋์' ๋ฒ์ ์์ 5๊ฐ๋ฅผ ์ถ์ฒํด์ฃผ์ง ๋ชปํ๋ค๋ฉด, ๋ง์ ๋ง๋ ์ ํต์ฃผ๋ก ๋ฒ์๋ฅผ ๋ํ ์๋ ค์ค๋ค.
-
-
-
-
๋ง์ด ํ์ด์ง
-
์ ๋ฐ๋๋ผ๋ ๋ค์ด๋ฐ์ ํตํด ์ฌ์ฉ์์ ์ ์ ๋ํ ํต๊ณ๋ฅผ ํํํ์๊ณ , ์ ์ฅ๊ณ ๋ผ๋ ๋ค์ด๋ฐ์ ํตํด ์ฌ์ฉ์๊ฐ ์ข์์๋ฅผ ๋๋ฅธ ์ ํต์ฃผ์ ๋ฆฌ๋ทฐ๋ฅผ ๋จ๊ธด ์ ํต์ฃผ์ ๋ํ ๋ชฉ๋ก์ ์ฝ๊ฒ ์ ์ ์๋ค.
-
๋ฆฌ๋ทฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก, ์์ ์ด ์ข์ํ๋ ์ฃผ์ข ์ฐจํธ์ ๋ง์ ์ ๋ค์ ํ๊ท ๊ฐ์ ๊ทธ๋ํ๋ก ๋ณด๊ธฐ ์ฝ๊ฒ ํ์ํ์๋ค.
-
๋ํ, ์์ ์ด ์ํ ์ ํ์ ์ฃผ์ข ์ฐจํธ์ ํ๊ท ์ ๋ง์ ๋ณด๊ธฐ ์ฝ๊ฒ ํ์ํ์๋ค.
-
์์ ์ด ๋ง์ ์ ๋ค์ ๋ง์น ๋ฑ์ง์ฒ๋ผ ์์ ์ ๋ง์ดํ์ด์ง์ ๋จ๊ฒ ๋๋ค. ์ ํต์ฃผ์ ์์กฐ์ฅ ์์น๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์๋ ๊ฒ์ด๋ฉฐ, ์ด๋ํ ์ฐ๋ฆฌ ์ฃผ์ ์ ๋ง๊ฒ ํ์ฑ์ผ๋ก ๋์์ธํ์ฌ ์ฌ์ฉ์๋ค์ด ์์ ํ๊ณ ์ถ์ดํ ๊ฒ์ด๋ค.
-
์์ ์ด ์ข์ํ๋ ์ฃผ์ข ์ฐจํธ์ ์์ ์ด ๋จน์ ์ ํต์ฃผ์ ํ๊ท ๊ฐ ์ฐจํธ
-
์์ ์ด ์ํ ์ ํ์ ์ข์ํ๋ ์ฃผ์ข ์ฐจํธ์ ๋จน์ ์ ํต์ฃผ์ ํ๊ท ๊ฐ ์ฐจํธ
-
์ข์์๋ฅผ ๋๋ฅธ ๋ชฉ๋ก๊ณผ ํ๊ฐํ ๋ชฉ๋ก์ ๋ํ ์ ๋ณด ์ ๊ณต
-
์ ํต์ฃผ์ ์์กฐ์ฅ ์์น ๊ธฐ๋ฐ์ผ๋ก ํ ๋ฑ์ง ์ ๊ณต
-
-
7์ฃผ๋ผ๋ ์ฃผ์ด์ง ๊ธฐ๊ฐ๋์ ๋ฐ์ดํฐ ์์ง ๋ฐ ์ ์ , ์ถ์ฒ์๊ณ ๋ฆฌ์ฆ ๊ตฌํ์ ํฌํจํ์ฌ ํ๋ก์ ํธ๋ฅผ ์์ฑํ์ฌ์ผ ํ๊ธฐ ๋๋ฌธ์ ๊ฒฐ๊ณผ๋ฌผ์ ๋ํด ์ฝ๊ฐ์ ์์ฌ์์ด ๋จ๋๋ค. ๋ง์ ์์ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ค ๋ณด๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์๋๋ ํ์ด์ง ๋ ๋๋ง ์๋๊ฐ ๋ฆ์ด์ง๊ธฐ๋ ํ์๊ณ , Django ์ ORM ์ ๋ณด๋ค ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ์ง ๋ชปํ์๋ค. ์ดํ์ ๊ธฐํ๊ฐ ์ฃผ์ด์ง๋ค๋ฉด ๊ตฌ์กฐ๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ๋ณด๋ค ํจ์จ์ ์ผ๋ก ํด์, ๋ ๋น ๋ฅด๊ณ ๊ฐ๋ฒผ์ด ๊ฒฐ๊ณผ๋ฅผ ๋ด๊ณ ์ถ๋ค.























