๐ฅ ๊ธฐ๋ฅ ๋ถ๋ฅ ํ์ - boostcampwm-2022/web33-Mildo GitHub Wiki
1. ๊ฐ์
- ์ผ์ ๋ฐ ์ฅ์ : 11.16.(์) 11:20 ~ 12:00, 13:30 ~ 16:00, ๊ฒ๋ํ์ด
- ์ฐธ์ฌ์ : ์ ์
- ๋ชฉ์ : 2์ฃผ์ฐจ ๊ตฌํ์ ์ํ ๊ธฐ๋ฅ ๋ถ๋ฅ ๋ฐ ๋ฐฐ์
- ํ์ ์ค์๋ : ์ค
- ์ด๋ฒ ์ฃผ ํ์ด
- ์์ค - ํ๋น
- ์ค์ฐ - ํ์
2. ๋
ผ์
2.1. ์ด์ ํฌ๊ธฐ
2.1.1. ์ด์๋ฅผ ๋ ์๊ฒ ๋๋๋ ๋ฐฉ์
- ์ด์๋ฅผ ๋ ์๊ฒ ๋๋์ด์ผ ๊ฐ ํ์ด๊ฐ FE, BE๋ฅผ ๊ณ ๋ฅด๊ฒ ๊ตฌํํ ์ ์์
- ๊ธฐ์กด์ ์ด์๋ฅผ ๋ ์์ ๋จ์๋ก ๋๋๊ณ , ์ปค๋ฐ์ ๋ ์์ ๋จ์๋ก ๋ณด๋ด๊ธฐ
- ๊ธฐ์กด์ ์ด์์์ ์๊ฐํ์ง ๋ชปํ๋ ๋ถ๋ถ์ ๊ณ ๋ คํ๊ณ ๋๋๊ธฐ๋ ํด์ผ ํจ
- MongoDB ์ฐ๊ฒฐ, ๋ฐฑ์๋ ์ฐ๊ฒฐ ๋ฑ์ ์ค์ํ ๋ด์ฉ์ด ๋น ์ ธ ์์
2.1.2. ์ด์๋ฅผ ๊ธฐ์กด ํฌ๊ธฐ๋ก ์ ์งํ๋ ๋ฐฉ์
- ๊ตณ์ด ํ๋์ ๊ธฐ๋ฅ์ ์ธ์ธํ๊ฒ ๋๋ ์ ๊ตฌํํด๋ณด์ง ์์๋ FE, BE๋ฅผ ๊ณ ๋ฅด๊ฒ ๊ตฌํํ ์ ์์
- ๋ํ, ํ์ด ๊ฐ ์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ ์ ํด์ฃผ๋ฉด ์ถฉ๋ถํ ์๋ก์ ์ฝ๋๋ฅผ ์ดํดํ ์ ์์
- ์ด์๋ฅผ ์ง๊ธ๋ณด๋ค ๋ ์๊ฒ ๋๋๊ณ , ์์ฃผ ์
๋ฌด๋ฅผ ๊ต์ฒดํ๋ฉด ์ธํฐ๋ฝํธ ๋ฐ์์ด ์ฌํด์ง
2.1.3. ๊ฒฐ๋ก
- ์ฐ์ , ํ์ด ๊ฐ ์
๋ฌด๋ฅผ ๋๋ ๋ ์ด์๋ฅผ ๊ธฐ์กด ํฌ๊ธฐ๋ก ๋๋
- ๊ฐ ํ์ด์์ ์ด์๋ฅผ ์ธ๋ถํํ์ฌ ์งํ
2.2. ๋๋ ํ ๋ฆฌ ๊ตฌ์กฐ
- styled component ํ์ผ ๋๋ ๊ฒ์ธ๊ฐ
- component์ style์ ๋ถ๋ฆฌํ๋ฉด ์ฝ๋์ ๊ฐ๋
์ฑ์ด ์ข์์ง
- styled component๋ css ํ์ผ๊ณผ ๋ค๋ฅด๊ฒ ์ง์ญ์ ์ผ๋ก ์คํ์ผ ์ฝ๋๋ฅผ ๊ด๋ฆฌํ๋ ๊ฒ์ด ์ฅ์ ์
- ๊ฒฐ๋ก : ์ฐ์ ์ style์ ์ปดํฌ๋ํธ ํ์ผ์ ์์ฑ
- ์ปดํฌ๋ํธ ์ด๋ฆ์ผ๋ก ํด๋ ๋ง๋ค ๊ฒ์ธ๊ฐ?
- ํ์ ํ์ฅ์ฑ์ ๊ณ ๋ คํ์ฌ ์ปดํฌ๋ํธ ์ด๋ฆ์ผ๋ก ํด๋ ์์ฑ
- ๋๋ ํ ๋ฆฌ ์ด๊ธฐ ๊ตฌ์กฐ
routers
ใดauthRouter
controllers
ใดauthController
services
ใดauthService
repositories
models
src
ใดapis
ใดutils
ใดassets
ใดcomponents
ใดComponent
ใดComponent.tsx
ใด*Component.style.tsx
ใดNewComponent
ใดconfig
ใด*atom (jotai)
ใด*action (jotai)
ใดhooks
ใดuseHooks.ts
ใดpages
ใดPage
ใดPage.tsx
ใด*Page.style.tsx
2.3. ๋ฐฑ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ต์ฒด?
2.3.1. koa
- koa๋ ๋ฏธ๋ค์จ์ด ๊ธฐ๋ฅ๋ง ์์ด ๊ฐ๋ฒผ์ด ๊ฒ์ด ์ฅ์
- ๊ทธ๋ฐ๋ฐ router ๋ฑ ๊ฑฐ์ ํ์์ ์ผ๋ก ํ์ํ ๊ธฐ๋ฅ๋ค์ ์ํด ๋ค๋ฅธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ํ์ํจ
- boilerplate๋ก ๋ณต์กํ๊ฒ ๊ตฌํํ๋ฉด express, nest ๋๋น ์ฅ์ ์ด ํด์
- express ๋๋น ์ฐธ๊ณ ์๋ฃ๋ ์ ์
2.3.2. express.js
- ํน๋ณํ ์ด์ ์์ด ์๋ก์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๊ตณ์ด ์ฌ์ฉํ ํ์๊ฐ ์์
- ์ฐ๋ฆฌ ํ์์ ๋ชจ๋ FE๋ฅผ ์ง๋งํ๋๋ฐ BE์์ ์ต์ง ๋ณํ๊ฐ ํ์ํ๊ฐ?
- express๋ฅผ ๋ ๊ณต๋ถํ๋ฉด์ BE ์์ฒด์ ๋ํด ์ดํดํ๊ธฐ ์ํ ๋
ธ๋ ฅ์ด ํ์ํจ
- ์์ ๋๊ฐ ๋์
2.3.3. nest.js
- Java์ spring boot์ ์ ์ฌํ boiler plates ๋ฐฉ์
- ๊ทธ๋ฌ๋ ์ค์ฐ๋ฅผ ์ ์ธํ ๋ค๋ฅธ ๋ฉค๋ฒ๋ค์ ๋ชฐ๋ผ์ ํ์ต ์๊ฐ์ด ํ์ํจ
2.3.4. ๊ฒฐ๋ก
- express๋ก ๋ณต๊ทํ์!!
2.4. trouble shooting ๊ธฐ๋ก ๋ฐฉ๋ฒ
- ๋
ธ์
- ๋ด์ฉ์ ์์ธํ๊ฒ ์ ์ ์ ์์ผ๋ฉฐ, ์์นด์ด๋ธ ์ญํ ์ ํจ
- ๊ทธ๋ฌ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ฝ๋๊ฐ ์ด๋์ธ์ง ํท๊ฐ๋ฆด ์ ์์
- ๊นํ๋ธ
- ์๋ฅ๊ฐ ๋ฐ์ํ ์ฝ๋์ ์์น, ํด๊ฒฐ ๋ฐฉ์ ๋ฑ์ ๋์์ ํ์ธํ ์ ์์
- ์ด์ : ์ฃผ๋ก ์ฌ์ ์ ๊ตฌํํ ๊ธฐ๋ฅ์ ์ ํ๋ ์ฉ๋๋ก ์ฌ์ฉํ๋๋ฐ, ์ค๊ฐ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค๊ณ ์์๋ก ๋ฐํํ๋ฉด ํท๊ฐ๋ฆฌ์ง ์์์ง?
- PR : ์ค๋ฅ์ ๋ด์ฉ๊ณผ ํด๊ฒฐ ๋ฐฉ์ ๋ฑ์ ์์ธํ๊ฒ ์ ์ ์ ์์
- ๊ฒฐ๋ก
- ์ฐ์ ๋
ธ์
์ ์ผ์๋ณ๋ก trouble shooting ์์ฑ
- ๊นํ๋ธ์์๋ ๊ฐ์ ์ด์์ PR์ ํ์ฉํด๋ณด๊ณ ๋ญ๊ฐ ๋ ์ข์์ง ํ๋จ
2.5. ๋
ผ์ ๋ฐฉ๋ฒ์ ๋ํ ๊ณ ๋ฏผ
- ์ฐ๋ฆฌ๋ ํ๋์ ๋ฌธ์ ์ ๋ํด ์ด์ฌํ ๋
ผ์ํจ
- ๊ฐ์ ์์ ์ ์๊ฒฌ๋ ์ ์ ์ํ๊ณ , ์๋๋ฐฉ์ ์๊ฒฌ์ ๋ํด ์ ๊ทน์ ์ผ๋ก ํผ๋๋ฐฑ ํจ
- ๊ทธ๋ฌ๋ ํ์ ์ด์์ผ๋ก ๋
ผ์์ ์๊ฐ์ ์จ์ ๊ตฌํ์ด ๋๋ ค์ง๋ ๊ฒฝํฅ์ด ์์
- ํ์๊ฐ ์ ํด ๋์ ์๊ฐ์ ๋๊ธฐ๊ฑฐ๋, ์ฌ๋ ์๊ฐ์ ์ ๋๋ก ์งํค์ง ๋ชปํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์
3. ๊ตฌํ ๋ชฉ๋ก
3.1. ์ง๋ ์ถ๋ ฅ
3.2. API ์์ฒญ
3.3. ํ
3.4. ์์ธ ์ ๋ณด ๋ชจ๋ฌ
3.5. ๋ถ๋ฐฐ
- A์กฐ(ํ๋น, ์์ค)
- ๋ค์ด๋ฒ ์ง๋ API ์ฐ๊ฒฐ
- ์ง๋ ์ด๊ธฐ ํ๋ฉด์ ์์ธ ์ค์ฌ์ผ๋ก ์ถ๋ ฅ
- B์กฐ(์ค์ฐ, ํ์ )
- express ์๋ฒ ์ฐ๊ฒฐ
- ์์ธ ์ค์๊ฐ ๋์ ๋ฐ์ดํฐ API ์ฐ๊ฒฐ
- ์ฃผ์ ์ฅ์ 50๊ณณ์ ๋ํ ์ธ๊ตฌ๋ฐ๋/์๋/๊ฒฝ๋ ์ ๋ณด ๊ฐ์ ธ์ค๊ธฐ