์์ ๋ฌธํ๋ฅผ ์ฌ๋ํ๋ ๋ชจ๋ ๋ถ๋ค์ ์ํ!
์์น๊ธฐ๋ฐ ๋ฌธํ์ปจํ ์ธ ์ถ์ฒ ์ดํ๋ฆฌ์ผ์ด์ !
์ด๋ฆ | ๊นํ๋ธ ์ฃผ์ | ํฌ์ง์ |
---|---|---|
์์ง์ด | MildColor์ github | Frontend |
์์ํฌ | Limsoheeee์ github | Frontend |
๊ตญ๊ฒฝํ | kyunghoonkook์ github | Frontend |
์ฅ์ง์ค | Jaylin์ github | Backend |
๊น์ง์ | kimjiae970์ github | Backend |
๋ฐํ๋ | atto08์ github | Backend |
๊ธฐ๊ฐ : 2023๋ 01์ 02์ผ ~ 2022๋ 02์ 10์ผ(5์ฃผ)
์คํ | ๋์ ์ด์ | ๋ฒ์ |
---|---|---|
Expo | 1. ์๊ตฌ์ฌํญ ๋ฐ ๋ฌธ์ : App์ ๋ง๋ค๊ธฐ ์ํด ์ด๊ธฐ ๊ฐ๋ฐํ๊ฒฝ ์ค์ ์ด ํ์. 2. ๋์ : expo CLI, react-native CLI 3. ์์ฌ๊ฒฐ์ : ์ด๋ฒ side project๋ react-native๋ฅผ ์ด์ฉํ ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ง๋๋ ๊ฒฝํ๊ณผ ๋น ๋ฅธ ๊ฐ๋ฐ ์๋๋ฅผ ์ถ๊ตฌ ํ์์. ๋๋ฌธ์ ์ด๊ธฐ ๊ฐ๋ฐํ๊ฒฝ ์ค์ ์ ๋ฒ๊ฑฐ๋ก์์ ์ค์ฌ์ฃผ๊ณ ๋ฐฐํฌ๋ฅผ ๋น ๋ฅด๊ฒ ํ ์ ์๋ expo๋ฅผ ์ ํ. ๋ํ ์ดํ๋ฆฌ์ผ์ด์ ์ด ์๊ตฌํ๋ ๊ธฐ๋ฅ๋ค์ expo์์ ์ ๊ณตํด์ฃผ๋ sdk๋ง์ผ๋ก ๊ตฌํํ๊ธฐ์ ์ถฉ๋ถํ๊ธฐ ๋๋ฌธ์, ์ปค์คํ ๋ค์ดํฐ๋ธ ๋ชจ๋ ๊ฐ๋ฐ๋ฑ ๋ค๋ฅธ ์ธ์ด๋ก ์ถ๊ฐ ๊ฐ๋ฐํ ์ด์ ๊ฐ ์๋ค๊ณ ์๊ฐ. |
^47.0.13 |
React-Native | 1. ์๊ตฌ์ฌํญ ๋ฐ ๋ฌธ์ : App์ ๋ง๋ค๊ธฐ ์ํ ํ๋ ์์ํฌ์ ๋์ ์ด ํ์ 2. ๋์ : react-native, flutter, kotlin 3. ์์ฌ๊ฒฐ์ : ios์ android, ์ฆ ํ์ด๋ธ๋ฆฌ๋ ์ฑ ๊ฐ๋ฐ์ด ๊ฐ๋ฅํ๊ณ ์ด๋ฏธ React๋ฅผ ๋ค๋ฃจ๋ ํ๋ก ํธ์๋ ์ธก์์ dart๋ java๋ฑ ์๋ก์ด ์ธ์ด๋ฅผ ๋ฐฐ์ธ ํ์ ์์ด ๋น ๋ฅธ ๊ฐ๋ฐ ์๋๋ฅผ ๊ธฐ๋ํ ์ ์๋ react-native๋ฅผ ๋์ ํ๊ธฐ๋ก ๊ฒฐ์ |
0.70.5 |
React-Query | 1. ์๊ตฌ์ฌํญ ๋ฐ ๋ฌธ์ : ๊ธฐ์กด์ ๋น๋๊ธฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ์ํ redux thunk ๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ, redux์ ๊ธฐ๋ณธ์์น์ ์ถฉ์กฑํ๊ธฐ ์ํด์๋ ๋ณด์ผ๋ฌ ํ๋ ์ดํธ ์ฝ๋๊ฐ ๋ฐฉ๋ํด์ง๊ณ , ์๋ฒ๋ฐ์ดํฐ์ ํด๋ผ์ด์ธํธ ๋ฐ์ดํฐ๊ฐ ์์ฌ์ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๋๋ฐ์ ๋ฌธ์ ๋ฐ์. โ ์๋ฒ๋ฐ์ดํฐ์ ํด๋ผ์ด์ธํธ์ ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฆฌ์์ผ ๊ด๋ฆฌํ๊ณ , ์ ์ฐํ ์์ ์ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋์ ์ด ํ์. 2. ๋์ : 1) redux saga 2) redux-thunk 4)react-query 3. ์์ฌ๊ฒฐ์ : - redux saga: ์๋์ ์ผ๋ก ๋์ learning curve โ ๋จ๊ธฐ ํ๋ก์ ํธ์์ ๋ถ์ ํฉ - redux thunk โ redux ์ค์ ์ด ์๋ํํฐ๋ก ์ธํด ๋์ฑ ๋น๋ํด๊ณ , ๋น๋๊ธฐ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํด ๊ด๋ จ๋ ์ฝ๋๋ฅผ ๊ฐ๋ฐ์๊ฐ ๊ฒฐ์ ํ๊ณ ๊ตฌํํด์ผํ๋ค. ํ์ ์์ ๋ณต์กํด์ง๊ณ , ๊ฐ๋ฐ ์๊ฐ์์๋ ๋จ์ ์ผ๋ก ์์ฉ. - react query โ ๋ณด์ผ๋ฌํ๋ ์ดํธ ์ฝ๋์ ๊ฐ์, react-query์์ ์ ๊ณตํ๋ ๊ท๊ฒฉํ๋ ์ํ๊ด๋ฆฌ ๋ฐฉ์์ ํ์ ๊ณผ ์ฝ๋์์ฑ์ ํจ์จ์ , ์ง์์ ์ผ๋ก ์๋ฒ์ ์ํ๋ฅผ ๋ถ๋ฌ์ค๊ณ , ์บ์ฑํ๊ธฐ ๋๋ฌธ์ ๋น๋๊ธฐ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๊ธฐ์ ์ฉ์ด. ๊ฐ๋ฐ ์๋์ ํธ๋ฆฌ์ฑ์ ์ํด react query ์ฑํ |
^4.22.0 |
jotai | 1. ์๊ตฌ์ฌํญ ๋ฐ ๋ฌธ์ : prop drilling์ ํผํ๊ธฐ ์ํจ๊ณผ ์ ์ญ์ ์ผ๋ก ๋ฐ์ดํฐ๋ค์ ๊ด๋ฆฌํด์ฃผ๋ ์ํ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋์ ํ์์ฑ์ ๋๋ 2. ๋์ : redux, recoli, mobx, context api, zustand, jotai 3. ์์ฌ๊ฒฐ์ : ์๋ฒ์์ ๋น๋๊ธฐ๋ก ๋ฐ์์ค๋ ๋ฐ์ดํฐ๋ React Query๋ก ๋ด๋นํ๊ธฐ๋ก ํ์๊ณ , ์ฑ ๋ด์์๋ง ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ค์ ๊ด๋ฆฌํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ํ์ํ๋ค ํ๋จ. ๋๋ถ๋ถ์ ๋น๋๊ธฐ ๋ฐ์ดํฐ๋ก React Query๋ก ๋ค๋ฃจ๊ธฐ ๋๋ฌธ์ ์ ์ญ์ ์ผ๋ก ๊ด๋ฆฌํ ๋ฐ์ดํฐ๊ฐ ๋งค์ฐ ์ ์. ๋ฐ๋ผ์ ๋ณด์ผ๋ฌ ํ๋ ์ดํธ๊ฐ ์ ๊ณ ๋ฌ๋์ปค๋ธ๊ฐ ๋ฎ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ํ. ใ atomic state management ๋ฐฉ์์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ธ recoil๊ณผ jotai์ค ๋์ ์ด ๋ ์ด๋ ค์ด jotai๋ก ๊ฒฐ์ ํจ. |
^2.0.0 |
Axios | 1. ์๊ตฌ์ฌํญ ๋ฐ ๋ฌธ์ : ๋ฐฑ์๋์ ๋ฐ์ดํฐ ๋น๋๊ธฐ ํต์ ์ ํ๊ธฐ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋์ ํ์.ํธ์๋ฅผ ์ํ ๊ธฐ๋ฅ๊ณผ ๋ธ๋ผ์ฐ์ ์ง์๊ณผ ๊ฐ์ ํ์ฅ์ฑ ๊ณ ๋ ค. 2. ๋์ : AXIOS, FETCH, AJAX 3.์์ฌ๊ฒฐ์ : - FETCH : ๋ณ๋์ ์ค์น๊ณผ์ ์ด ๋ถํ์ํ์ง๋ง, ์๋ต๋ฐ์ดํฐ๋ฅผ JSON๋ฉ์๋๋ฅผ ํตํ ๋ณํ ๊ณผ์ ์ด ํ์, ๋ธ๋ผ์ฐ์ ์ง์๋ฒ์๋ AXIOS ๋ณด๋ค ์ ์. -AJAX : jquery ๋ฅผ ํตํด ์ฝ๊ฒ ๊ตฌํ๊ฐ๋ฅ, Error, Success, Complete์ ์ํ๋ฅผ ํตํด ํ๋ฆ์ ๊ตฌ๋ถ ๊ฐ๋ฅ, ๊ทธ๋ฌ๋ promise๊ธฐ๋ฐ์ด ์๋. -AXIOS : ์ค์น๊ณผ์ ์ด ํ์ํ์ง๋ง, ๋ ๋์ ๋ธ๋ผ์ฐ์ ์ง์๋ฒ์, ์๋ต๋ฐ์ดํฐ๋ฅผ ์๋์ผ๋ก JSON์ผ๋ก ๋ณํ, ๋ณ๋์ ์ธ์คํด์ค ์์ฑ๊ฐ๋ฅ์ผ๋ก ์ธํ ์ ์ง๋ณด์, ๊ฐ๋ ์ฑ ๋ฉด์์ ์ฅ์ , interceptor ๊ธฐ๋ฅ ์ ๊ณต โ jquery๋ ํ๋ก์ ํธ์ ๋์ ํ์ง ์๊ณ , Fetch์ AJAX ๋ณด๋ค ๋ ๋ง์ ํธ์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ AXIOS๋ฅผ ๋์ . |
^1.2.2 |
์์ฑ ์์
ํ์ด์ง | API ์ฐ๊ฒฐ, ๊ธฐ๋ฅ ๋ฐ CSS |
---|---|
๋ก๊ทธ์ธ, ํ์๊ฐ์ - ์์ง์ด,๊ตญ๊ฒฝํ | โ ์นด์นด์ค ๋ก๊ทธ์ธ |
๋ฉ์ธํ์ด์ง - ์์ํฌ | โ
์ฌ์ฉ์ ์์น์ ๋ณด ์์ง ๋ฐ ๊ถํ ๊ด๋ฆฌ โ ์์น๊ธฐ๋ฐ ์ปจํ ์ธ ์ถ์ฒ โ ๋ฉ์ธ ํ๋ณด ์นด๋ฃจ์ โ ๋ฒ ์คํธ, ์ ๊ท ๊ธ |
์นดํ ๊ณ ๋ฆฌ - ์์ง์ด | โ
์นดํ
๊ณ ๋ฆฌ๋ณ ์ปจํ
์ธ ๋ทฐ โ ์นดํ ๊ณ ๋ฆฌ ๋๋กญ๋ค์ด |
์ปจํ ์ธ ์์ธํ์ด์ง - ์์ง์ด | โ
ํ๋ฉด ๊ฐ๋ก ๋์ด์ ๋ง๊ฒ ์ด๋ฏธ์ง ํฌ์คํฐ ํฌ๊ธฐ ๋์ โ ํฌ์คํฐ ์นด๋ฃจ์ |
์ปค๋ฎค๋ํฐ - ์์ง์ด | โ
์ปค๋ฎค๋ํฐ CRUD โ ์นดํ ๊ณ ๋ฆฌ โ ์๋จTOP ๋ฒํผ โ ๊ฐค๋ฌ๋ฆฌ ์ด๋ฏธ์ง ๋ถ๋ฌ์ค๊ธฐ |
๊ฒ์ํ์ด์ง- ์์ํฌ | โ
๊ฒ์๊ฒฐ๊ณผ ๋ฆฌ์คํธ ๋ทฐ โ ์ถ์ฒ ๊ฒ์์ด ๊ธฐ๋ฅ |
๊ณต์งํ์ด์ง - ์์ํฌ | โ ๊ณต์ง ๊ด๋ จ CRUD |
๋ง์ดํ์ด์ง(๋ฉ์ธ) - ๊ตญ๊ฒฝํ, ์์ํฌ | โ ๋ง์ดํ์ด์ง CRUD |
๋ง์ดํ์ด์ง(๊ธ๋ชฉ๋ก, ํฐ์ผ๋ชฉ๋ก, ์ข์์ ๋ฆฌ์คํธ ) - ์์ํฌ | โ ๋ง์ดํ์ด์ง CRUD |
๋ง์ดํ์ด์ง(ํฐ์ผ๊ธฐ๋กํ๊ธฐ) - ์์ง์ด | โ
ํฐ์ผ๊ธฐ๋กํ๊ธฐ ๊ธฐ๋ฅ โ ํด๋น ์ปจํ ์ธ ๊ฒ์ |
ํ์ด์ง | API ๊ธฐ๋ฅ ๊ฐ๋ฐ |
---|---|
๋ก๊ทธ์ธ, ํ์๊ฐ์ - ์ฅ์ง์ค | โ ์นด์นด์ค ๋ก๊ทธ์ธ(OAuth) |
๋ฉ์ธํ์ด์ง - ์ฅ์ง์ค, ๊น์ง์ | โ
์ฌ์ฉ์ ์์น์ ๋ณด ๊ธฐ๋ฐ ์ปจํ
์ธ ์ถ์ฒ ๊ธฐ๋ฅ โ ๋ฒ ์คํธ, ์ ๊ท ๊ธ |
์นดํ ๊ณ ๋ฆฌ - ๋ฐํ๋ | โ ์นดํ ๊ณ ๋ฆฌ๋ณ ์ปจํ ์ธ ๋ชจ์๋ณด๋ ๊ธฐ๋ฅ |
์ปจํ ์ธ ์์ธํ์ด์ง - ๋ฐํ๋ | โ ์ปจํ ์ธ ์์ธํ์ด์ง ์ ๋ณด๋ณด๋ ๊ธฐ๋ฅ |
์ปค๋ฎค๋ํฐ - ๋ฐํ๋ | โ ์ปค๋ฎค๋ํฐ CRUD |
๊ฒ์ํ์ด์ง- ๋ฐํ๋ | โ ํตํฉ ๊ฒ์ ๊ธฐ๋ฅ |
๊ณต์งํ์ด์ง - ๋ฐํ๋, ์ฅ์ง์ค | โ
๊ณต์ง ๊ด๋ จ CRUD โ ๊ด๋ฆฌ์ ๊ถํ ์ถ๊ฐ |
๋ง์ดํ์ด์ง(๋ฉ์ธ) - ์ฅ์ง์ค | โ ๋ง์ดํ์ด์ง CRUD |
๋ง์ดํ์ด์ง(๊ธ๋ชฉ๋ก, ํฐ์ผ๋ชฉ๋ก, ์ข์์ ๋ฆฌ์คํธ ) - ์ฅ์ง์ค | โ ๋ง์ดํ์ด์ง CRUD |
๋ง์ดํ์ด์ง(ํฐ์ผ๊ธฐ๋กํ๊ธฐ) - ์ฅ์ง์ค | โ ํฐ์ผ๊ธฐ๋กํ๊ธฐ ๊ธฐ๋ฅ(S3 ์ฐ๋) |
Front-end
- ๊ณผ๊ฑฐ ์ฑํ
๋ฌดํ ์คํฌ๋กค๋ก ๋ถ๋ฌ์ค๊ธฐ
- ์ปค๋ฎค๋ํฐ ๋๊ธ ๊ธฐ๋ฅ
- ๊ฒ์, ์ข์์๋ฑ ์๋ฒ์ ๋ถํ๊ฐ ์ฌ ์ ์๋ api call ์ต์ ํ
- ์ด๋ฏธ์ง ์ฉ๋ ์ต์ ํ
- ์ฑํ
์์ ์ด๋ฏธ์ง ์ ์ก ๊ธฐ๋ฅ ์ถ๊ฐ