[Main Project 1์ฃผ์ฐจ] 8.24 ~ 8.31
๊ธฐํ, ๋์์ธ ์๋ฃ & ๋ณธ๊ฒฉ์ ์ผ๋ก ๊ฐ๋ฐ ์ค๋น
๐ฌ ํ๋ก์ ํธ๊ฐ ๋๋ ํ์ ๋ฐ์ผ๋ฆฌ๋ก ์ ๋ฆฌํ๋ ๊ธฐ๋ก์ ๋ณด๋ฉฐ ํ๋ก์ ํธ ์ ์ฒด ๊ณผ์ ์ ์ ๋ฆฌํ์ฌ 4์ฃผ์ฐจ๋ก ๋๋์ด ์์ฑํ์ต๋๋ค.
1์ฃผ์ฐจ: ํ์ฌ๊ธ
๐ ๋ฐ๋ชจ๋ฐ์ด & ํ๋ก์ ํธ ์ ์ฒด ํ๊ณ
๐ฉ๐ป๐ป Github Repository https://github.com/sw2377/smoothie
๐ SUMMARY
8.24 THU
1. ํ ๋น๋ฉ & ํ ๊ท์น ์ ํ๊ธฐ
2. ํ๋ก์ ํธ ์์ด๋์ด Mix & ์ ์ฒด์ ์ธ ๊ธฐํ ํ์
3. ํ ๋ช “๐ซ ๋ธ๋ฃจ๋ฒ ๋ฆฌ์ค๋ฌด๋”๋ก ๊ฒฐ์
8.25 FRY
1. ์ด์ ์ ์ด์ด์ ๊ธฐํ ํ์
2. ์ฌ์ฉ์ ์๊ตฌ์ฌํญ ์ ์์ ์์ฑ
8.28 MON
1. ์ ์ ํ๋ก์ฐ ์์ฑ
2. ๐ง๐ป 1์ฐจ ๋ฉํ ๋ง ์ธ์ โก๏ธ ๊ธฐํ์ ๋ณผ๋ฅจ์ด ๋๋ฌด ํฐ ๊ฒ ๊ฐ์ผ๋, ํต์ฌ ๊ธฐ๋ฅ ์์ฃผ๋ก ์ค์ด๋๊ฑด ์ด๋จ๊น์?
8.29 TUE
1. ํ๋ก์ ํธ ๋ณผ๋ฅจ ์ค์ด๊ธฐ ํ์
2. ํ๋ฉด์ ์์ ์์ (ํ๋ก ํธํ)
8.30 WED
1. ํ๋ฉด์ ์์ ์์ ์๋ฃ
2. ๋ฐฑ์๋ ํ ์ด๋ธ & ํ๋ก ํธ ํ๋ฉด์ ์์ ๊ณต์ โก๏ธ ๋ฐฑ์๋์ ํ๋ก ํธ์๋์์์ ํ์ํ ๋ถ๋ถ ์ํต
3. git convention ๊ณต์
4. ๊ฐ๋ฐ ์์ ๋ถ๋ฐฐ ๋ฐ ๋ณธ๊ฒฉ์ ์ธ ๋์์ธ ์์ ์์ โก๏ธ ๋์์ธ ๊ฐ์ด๋ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ์ ๋งก์ ํํธ ๋์์ธ (Figma)
8.31 THU
1. ๋์์ธ ์์ ๋ง๋ฌด๋ฆฌ
2. ํ๋ก์ ํธ ๊ฐ๋ฐ ํ๊ฒฝ ์ธํ โก๏ธVite - React, Typescript
๐ 1์ฃผ์ฐจ ํ๊ณ
๐ ๋ชฉ์ฐจ
ํ ๋น๋ฉ๊ณผ ๊ธฐํ ํ์
์ฐจ๋ณ์ ์ ์ด๋ป๊ฒ ๋ ๊ฒ์ธ๊ฐ?
๐ง ์ฒซ๋ฒ์งธ ๋ฉํ ๋ง ์ธ์ : ํ๋ก์ ํธ๋ฅผ ์ด๋ป๊ฒ ์์ํ๋ ๊ฒ์ด ์ข์๊น?
ํ๋ก์ ํธ ๋ณผ๋ฅจ ์ค์ด๊ธฐ
ํ๋ฉด์ ์์ ์์ฑ ๋ฐ ๋์์ธ ์์
โพ๏ธ Figma๋ฅผ ์ฌ์ฉํ ํ๋ฉด์ ์์์ ๋์์ธ ์์
๊ฐ๋ฐํ๊ฒฝ ์ธํ
โพ๏ธ FE ๊ธฐ์ ์คํ์ ๋ํ STORY
์ฐ๋ฆฌ๋ ์ ํ์ ์คํฌ๋ฆฝํธ๋ฅผ ๋์ ํ๋ ค ํ์๊น?
์ํ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ Redux Toolkit์ ์ฌ์ฉํ๊ธฐ๋ก ํ์๊น?
CSS๋ ์ด๋ป๊ฒ ์์ ํ ๊น?
์ฃผ์ฐจ๋ณ ํ๊ณ ๋ฅผ ํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉด์ ์์ฑํ๋ ค๊ณ ํ์๋๋ฐ, ์ด๋ฐ์๋ ๊ธฐํ ํ์์ ๋์์ธ ์์ ์ ํ๋ค๊ณ , ์ค๋ฐ๋ถํฐ๋ ๊ฐ๋ฐ๋ ํด์ผ ํ๊ณ , ๋ถ์กฑํ ๋ถ๋ถ์ ํ์ต๋ ํด์ผ ํ๊ธฐ ๋๋ฌธ์ ํ๊ณ ๋ฅผ ์ธ ์๊ฐ์ด ์์๋ค. ๊ฒฐ๊ตญ ์ด๋ ๊ฒ ํ๋ก์ ํธ๊ฐ ๋ค ๋๋๊ณ ๋ ํ์์ผ ๊ธฐ์ต์ ๋๋ฌ์ด ์ ๋ฆฌ๋ฅผ ํด๋ณธ๋ค.
๊ทธ๋๋ ํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉฐ ๊ผผ๊ผผํ ๊ธฐ๋ก์ ๋ค ํด๋์ด์ ๊ธฐ์ต์ ๋ค์ ๋ ์ฌ๋ ค๋ณด๋๊ฑด ์ด๋ ต์ง ์์๋ค. ๊ฒ๋ค๊ฐ ํ๋ก์ ํธ๊ฐ ๋ง๋ฌด๋ฆฌ๋ ํ์ ํ๊ณ ๋ฅผ ์์ฑํ๋, ์ ์ฒด์ ์ผ๋ก ๋ค์ ๋์ง์ด๋ณผ์ ์๋ค๋ ์ ์์ ์๋ฏธ๊ฐ ์์๋ค. ๋ฐ๋ผ์ ์ด ํ๊ณ ๊ธ์ ๋น์ ํ๋ก์ ํธ๊ฐ ์ด๋ป๊ฒ ์งํ๋์๋์ง์ ํจ๊ป ํ๋ก์ ํธ๊ฐ ๋๋๊ณ ๋ ํ์ ๋์ ์๊ฐ๋ ์กฐ๊ธ์ฉ ๋ง๋ถ์ฌ์ง ๊ฒ ๊ฐ๋ค. ๐
ํ ๋น๋ฉ๊ณผ ๊ธฐํ ํ์
์ด๋ฏธ ์ ํด์ก๋ 5๋ช ์ ํ์๊ณผ ๋ง์ง๋ง์ ํฉ๋ฅํ๊ฒ ๋ ํ ๋ช ์ ๋ฐฑ์๋ ํ์์ผ๋ก ์ฐ๋ฆฌ ํ์ ์ด 6๋ช ๋ฐ๋ก ๋งค์นญ์ด ๋์๋ค. ์์กฐ๋ก์ด ์์์ ์๋ฆฌ๋ ๊ฒ ๊ฐ์๋ค. ํ์ฅ์ ํจ๊ป ํ๋ก์ ํธ๋ฅผ ํ์๊ณ ์ ์ํด์ฃผ์ จ๋ ๋ฐฑ์๋ ํ์๋ถ๊ป์, ๋ถํ์ฅ์ ํ๋ก ํธ ํ์ ํ์์ด ํ๊ฒ ๋์๋ค.
์ํต์ ํ ์คํธ ์ฑํ ๊ณผ ์์ฑ ์ฑํ ์ด ๊ฐ๋ฅํ ๋์ค์ฝ๋๋ฅผ ์ฃผ๋ก ์ฌ์ฉํ์ง๋ง, ์ฝ๋์คํ ์ด์ธ ์ธก์์ ๋ง๋ค์ด๋ ํ ๋ ธ์ ํ์ด์ง๋ ๊ณผ์ ์ ์ถ๊ณผ ๋ฉํ ๋ง ์ธ์ ๋ฑ์ ์ํด ํ์ฉํ๋ค.
์ด๋ค ์ฃผ์ ๋ก ํ๋ก์ ํธ๋ฅผ ํ ์ง ์ด๋ฐ ๊ธฐํํ์๊ฐ ์๊ฐ๋ณด๋ค ๊ธธ์๋ค. ํ๋ก์ ํธ์ ์ฃผ์ ๋ ์ฌ์ด๋ ํ๋ก์ ํธ ํ๋ซํผ์ผ๋ก ์๊ฒฌ์ ๋ง์ถ์๋ค. ์ด๋ฏธ ์์ฅ์๋ ๋น์ทํ ์น์ฌ์ดํธ๊ฐ ๋ง์๊ธฐ ๋๋ฌธ์ ์ฐ๋ฆฌ๋ ์ฐ๋ฆฌ๋ง์ ์ฐจ๋ณํ๋ ๋ฌด์ธ๊ฐ๋ฅผ ๋ฃ๊ณ ์ ํ๋ค. ์ฌ๋ฌ ์น์ฌ์ดํธ๋ฅผ ์ง์ ์ฌ์ฉํด๋ณด๊ณ ์ฅ๋จ์ ์ ๋ถ์ํ๊ณ , ์๊ฒฌ์ ๊ต๋ฅํ๋ฉฐ ์ด๋ค ์์ผ๋ก ๋ง๋ค์ด๋๊ฐ์ง ์ฒซ ์ผ์ฃผ์ผ ์ ๋๋ ๊ฑฐ์ ํ๋ฃจ์ข ์ผ ํ์๋ฅผ ํ๋ค.
์ด๋ฐ์ ๋ฐ ์ด์ผ๊ธฐ๋ฅผ ๋๋๋ ๋์ ์ฌ๋ฌ ์๊ฒฌ์ด ๋์๊ณ , ์ฒ์์๋ ์ต๋ํ ๋ง์ ์๊ฒฌ์ ์๋ ดํ๋ค. ์ดํ ๊ฐ์ง์น๊ธฐ๋ฅผ ํตํด ์๊ฐ ๋ด์ ๊ตฌํํ ์ ์์ ์ ๋๋ก ๋ฒ์๋ฅผ ์ถ์ํ๊ธฐ๋ก ํ๋ค.
๋ง๋ค๊ณ ์ถ์ ๊ธฐ๋ฅ์ ์ ๋ง ๋ง์์ง๋ง ๊ฐ๋ฐ์ ์ํ ์๊ฐ์ด ์ฑ ํ๋ฌ๋ ์๋์๊ธฐ ๋๋ฌธ์ ํ์ ๋ ์๊ฐ ์์ ํ ์ ์๋ ๊ธฐํ์ ํ๋ ๊ฒ์ด ์ค์ํ๋ค. ๋ฒ์๋ฅผ ์ค์ด๋๋ผ๋ ์์ฑ๋ ์๋ ๊ฒฐ๊ณผ๋ฌผ์ ๋ด์ผ ํ๋ค๊ณ ์๊ฐํ๋ค. ์์ด๋์ด ๊ธฐํ ํ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ์ฉ์ ์๊ตฌ์ฌํญ ์ ์์๋ฅผ ์์ฑํ๊ณ , ์๊ตฌ์ฌํญ์ ์ค์๋๋ฅผ ์, ์ค, ํ๋ก ๋๋์ด ๋ฌด์กฐ๊ฑด ๊ตฌํํด์ผ ํ๋ ๊ธฐ๋ณธ์ ์ธ ์ค์๋ “์”์ ๊ธฐ๋ฅ์ ์ฐ์ ์ ์ผ๋ก ๊ตฌํํ๊ธฐ๋ก ํ๋ค.
๐ ์ง๊ธ๊น์ง์ ๊ธฐํ์
์ฃผ์ : ๊ฒ์ฆ๋(๋์ ์ ๋ง๋) ํ์์ ๊ตฌํ๋ ์ฌ์ด๋ ํ๋ก์ ํธ ํ๋ซํผ
1. ํ์ ๊ตฌํ๊ธฐ (์ด๋ฐ ํ์์ ์ฐพ๊ณ ์์ด์)
2. ํ๋ก์ ํธ ๊ตฌํ๊ธฐ (์ด๋ฐ ํ์ ์ฐพ๊ณ ์์ด์)
- ์นด๋ ํํ์ ๋ฆฌ์คํธ๋ก, ๋ง์ฐ์ค๋ฅผ ์ฌ๋ฆฌ๋ฉด ๋ค์งํ๋ ํํ
3. ๊ฐ์ธ ํ๋กํ ํ์ด์ง (๋ง์ดํ์ด์ง)
- ๋์ ํ๋์คํฌ/์ํํธ์คํฌ๊ณผ ํ์ ๋ฆฌ๋ทฐ ๋ฑ ๊ณต๊ฐ
4. ์นธ๋ฐ๋ณด๋๋ฅผ ํ์ฉํ ํ๋ก์ ํธ ๊ณผ์ ๊ณต์
๊ตฌ์ฒด์ ์ธ ์ฌํญ๋ค์ด ํจ์ฌ ๋ง์์ง๋ง ์ ๋ง ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํ์๋ฉด ํฐ ํ์ ์์ ๊ฐ์๋ค.
์ฐจ๋ณ์ ์ ์ด๋ป๊ฒ ๋ ๊ฒ์ธ๊ฐ?
์์ ์ด์ผ๊ธฐํ๋ฏ ์์ฅ์๋ ์ด๋ฏธ ๋น์ทํ ์น์ฌ์ดํธ๊ฐ ๋ง์๋ค. ๋น์ฌ์ด๋, ๋ ํ, Hola ๋ฑ ์ด๋ณด๋ค ํจ์ฌ ๋ง์์ง๋ง ์ฐ๋ฆฌ๋ ์ด 3๊ฐ์ ์น์ฌ์ดํธ๋ฅผ ๋ฒค์น๋งํน ํ์๋ค.
“์ฌ์ด๋ ํ๋ก์ ํธ ํ๋ซํผ”์ ์ฐ๋ฆฌ๋ง์ ์ฐจ๋ณ์ ์ผ๋ก๋ ์ข ๋ ๊ฒ์ฆ๋ ์ ์ ํ๋กํ์ ์ ๊ณตํ๊ณ , ๋์ ์ ๋ง๋ ํ์์ ๊ตฌํ๊ธฐ ์ํ ํ์ ๊ฒ์ฆ๊ณผ ๋ฆฌ๋ทฐ ์์คํ ์ ๋ํด ๊น๊ฒ ์๊ฐํด๋ณด๊ธฐ๋ก ํ๋ค. ๊ทธ ๋ฐฉ์ ์ค ํ๋๋ก ์นธ๋ฐ๋ณด๋ ์์คํ ์ด ๋ฑ์ฅํ๋ค. ์์ ์ ํํ ์ฌ์ฉํ๋ ์นธ๋ฐ๋ณด๋๋ฅผ ์ ๊ทน์ ์ผ๋ก ํ์ฉํด ํ๋ก์ ํธ์ ์งํ ๊ณผ์ ๊ณผ ๋งก์ ์ญํ ๋ฑ์ ๊ณต๊ฐํ์๋ ๊ฒ์ด์๋ค. ์นธ๋ฐ๋ณด๋์๋ ํ๋ก์ ํธ์ ์ ๋ฐ์ ์ธ ๋ด์ฉ์ด ๋ค์ด์์ํ ๋ ๋ค๋ฅธ ์ ์ ๋ค์ ๊ณต๊ฐ๋ ์นธ๋ฐ๋ณด๋๋ฅผ ์ฐธ๊ณ ํ์ฌ ๋์ ํจ๊ป ํ๋ก์ ํธ๋ฅผ ํ ํ์์ ์ญ๋ ๋ฑ์ ํ์ ํ ์ ์๋๋ก ํ๋ ๊ฒ์ด๋ค. (์ด์ ๊ด๋ จํ์ฌ ์ข ๋ ์ธ๋ถ์ ์ด๊ณ ๊ตฌ์ฒด์ ์ธ ๋ ผ์๊ฐ ์์๋๋ฐ ์ด๋ ๋ฐ๋ก ์ ๋ฆฌํด๋์๋ค.)
ํ์ง๋ง ์ฐ๋ฆฌ๊ฐ ์๊ฐํด๋ณธ ์นธ๋ฐ๋ณด๋ ์์คํ ์ ์ฌ์ด๋ํ๋ก์ ํธ ํ๋ซํผ์ ๊ธฐ๋ณธ์ด ๋ ํ์ ์ฐพ๊ธฐ ๊ฒ์ํ์ด ํ์์ ์ผ๋ก ๋ค์ด๊ฐ์ผ ํ๋ ์์ ์์ (๊ฒ๋ค๊ฐ ์ฐ๋ฆฌ๋ ์ ์ ๊ฐ์ธ์ ํ๋กํ๋ ์นด๋ ํํ๋ก ์ ๋ก๋ ํ์ฌ ๊ฐ์ธ์ ํ๋ณดํ ์ ์๋ ๊ฒ์ํ ๋ํ ์๊ฐํด๋๊ณ ์์๋ค) ํ๋ก์ ํธ ๊ท๋ชจ๊ฐ ์ปค์ง ๊ฒ ๊ฐ๋ค๋ ๊ฑฑ์ ์ด ์์๋ค. ์๊ฐ์ด ๋ถ์กฑํ ๊ฒ ๊ฐ์๋ค.
๐ง๐ป ์ฒซ๋ฒ์งธ ๋ฉํ ๋ง ์ธ์ : ํ๋ก์ ํธ๋ฅผ ์ด๋ป๊ฒ ์์ํ๋ ๊ฒ์ด ์ข์๊น?
์นธ๋ฐ๋ณด๋ ์์คํ ์ด ํ๋ก์ ํธ์ ํฐ ๋น์ค์ ์ฐจ์งํ ๊ฒ์ด๋ผ๋ ๊ฑฑ์ ์์ ์ฒซ๋ฒ์งธ ๋ฉํ ๋ง ์ธ์ ์ด ์งํ๋์๋ค. ์ฐ๋ฆฌ๊ฐ ๋ง๋ค๋ ค๋ ์น์ฌ์ดํธ๋ฅผ ์ ์ ํ๋ก์ฐ๋ฅผ ํจ๊ป ๋ณด๋ฉฐ ์ค๋ช ํ ๊ฒ์ ๊ธฐ๋ฐ์ผ๋ก ์๋์ ๊ฐ์ ์ด์ผ๊ธฐ๋ค์ ๋๋์๋ค.
- ์ญ์๋ ํ๋ก์ ํธ ๋ณผ๋ฅจ์ด ์ข ํฐ ๊ฒ ๊ฐ๋ค๊ณ ๊ฑฑ์ ์ ํ์
จ๋ค. ๊ฐ๋ฐ์ ํ ์๊ฐ์ด ํ ๋ฌ๋ ์๋ ํ
๋ฐ, ๊ทธ์ ๋นํด ๊ธฐ๋ฅ์ด ๋ง์ ๊ฒ ๊ฐ๋ค๋ ์๊ฒฌ์ด์๋ค. ์กฐ๊ธ ๋ ๋ณด์์ ์ผ๋ก ์ก๊ณ , ํ๋ก์ ํธ๋ฅผ ์์ฑํ ์ ์๋ ๋ฐฉํฅ์ผ๋ก ๊ฐ๋ ๊ฒ์ด ์ข ๋ ์ข์ง ์์๊น?
→ ์ด์ ๊ดํด ๋ค์๋ ์ฐ๋ฆฌ๋ ํ๋ก์ ํธ ๋ณผ๋ฅจ ์ค์ด๊ธฐ ํ์์ ๋ค์ด๊ฐ๋ค. - ์์ฅ์ฑ๋ณด๋ค๋ ์ฐ๋ฆฌ์ ์ฑ์ฅ์ ์ด์ ์ ๋ง์ถ๋ ๊ฒ์ด ์ด๋จ๊น, ๋ผ๋ ์กฐ์ธ์ด ์์๋ค. ์์ฅ์์ ์ข์ ํ๊ฐ๋ฅผ ๋ฐ๋ ์ฑ๋ณด๋ค๋ ์ฐ๋ฆฌ๊ฐ ํ ํ๋ก์ ํธ๋ฅผ ํตํด ์ด๋ฌํ ์ด๋ ค์์ด ์์๊ณ , ์ด๊ฑธ ์ด๋ป๊ฒ ํด๊ฒฐํ์ผ๋ฉฐ, ์ด๋ฌํ ๊ฒฐ๊ณผ๋ฌผ์ ๋ด์๋ค๋ผ๋ ๊ฒ์ ์ดํํ๋ ๊ฒ์ ์ด์ ์ ๋ง์ถ๋ ๊ฒ์ด ์ด๋จ๊น?
์๊ฐํด๋ณด๋ฉด ํน๋ณํ ์์ด๋์ด๋ ์ข์ง๋ง, ์ด๋ฏธ ๋ด๊ฐ ์๊ฐํ๋ ๊ฒ๋ค์ ์ด๋๊ฐ์ ์กด์ฌํ ๊ฐ๋ฅ์ฑ์ด ์ปธ๋ค. ๋ฉํ ๋ง์ ์งํํ๊ธฐ ์ ๊น์ง๋ ์ฐ๋ฆฌ์ ํ๋ก์ ํธ๊ฐ ์์ฅ์ ์๋ง์ ์ํ๋ค๊ณผ๋ ๋ค๋ฅธ ์ฐจ๋ณ์ ์ด ๋ฐ๋์ ์กด์ฌํด์ผ ํ๋ค๊ณ ์๊ฐํ์๋๋ฐ, ๋ฉํ ๋ง ํ์ ์๊ฐ์ ํด๋ณด๋ ํน๋ณํ ๋ฌด์๋ณด๋ค๋, ์ด ํ๋ก์ ํธ๊ฐ ์ด๋ป๊ฒ ์งํ๋์๋์ง ๊ทธ ๊ณผ์ ์์์ ์ฐ๋ฆฌ๊ฐ ์ผ๋ง๋ ์ฑ์ฅํ๋์ง๋ฅผ ๋ณด์ฌ์ฃผ๋ ํธ์ด ํจ์ฌ ์ข์ง ์์๊น? ๋ผ๋ ์๊ฐ์ด ๋ค์๋ค. - ํ๋ก ํธ ํ์๋ค๋ผ๋ฆฌ ๊ณ์ํด์ ๊ณ ๋ฏผํ๋ ํ์
์คํฌ๋ฆฝํธ ๋์
์ ๋ํ ์ด์ผ๊ธฐ๋ ๋๋์๋ค. ์ฐ๋ฆฌ๋ ๋ชจ๋ ํ์
์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํด ํ๋ก์ ํธ๋ฅผ ํ๊ณ ์ถ์ ๋ง์์ ์์์ง๋ง, ํ๋ฒ๋ ์คํฐ๋ ์ธ์ ๋ชฉ์ ์ผ๋ก๋ ์ฌ์ฉํด๋ณธ ์ ์ด ์๊ณ , ์์ง ๋ง์ด ๋ถ์กฑํ ์ํ๋ผ ๊ณ ๋ฏผ์ ํ๊ณ ์์๋ค. ๋ ๋ํ ํ์
์คํฌ๋ฆฝํธ๋ฅผ ์ด๋ฒ ํ๋ก์ ํธ์์๋ ์ ๋ง ์ฌ์ฉํด๋ณด๊ณ ์ถ์์ง๋ง ์ ํ ์ ์์์ง ํ์ ์ด ์๋ ์ํ์๋ค.
๋ฉํ ๋์ ์์ ์๊ธฐํ๋ ๊ฒ์ฒ๋ผ ๊ฐ๋ฐ ์ค์ฝํ๋ฅผ ์ค์ด๊ณ , ํ์ ์คํฌ๋ฆฝํธ ๋ฑ์ ๊ธฐ์ ์ ์ธ ์ธก๋ฉด์ ๊ณต๋ถํ๊ณ ๋์ ํ๋ ๊ฒ์ ์ถ์ฒํ์๊ณ , ๋ฉํ ๋์ ์๊ฒฌ๊ณผ ํ๋ก ํธ ํ์๋ค์ ์๊ฒฌ์ ๋ฐ์ํด์ ํ์ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ๊ฒฐ์ ํ๋ค.
ํ๋ก์ ํธ ๋ณผ๋ฅจ ์ค์ด๊ธฐ
๋ฉํ ๋ง ์ธ์ ์์ ์ด์ผ๊ธฐ๊ฐ ๋์๋ ํ๋ก์ ํธ ๋ณผ๋ฅจ ์ค์ด๊ธฐ ํ์์ ๋ค์ด๊ฐ๋ค. ์ด๋ ์ ๋ ๊ธฐํ ํ์๊ฐ ๋๋๋ ํ๋๋, ๋ค์ ํ์๊ฐ ์์๋์๋ค. ๋ฉํ ๋ง ์ธ์ ์ ์งํํ๋ฉฐ ์๊ฐ์ด ๋ค์๋ ๋๋ก, ์ฐจ๋ณ์ฑ ์๋ ๋ฌด์๋ ์ค์ํ์ง๋ง ์ฐ์ ์ ๋ง๋ฌด๋ฆฌ๋ฅผ ๊ธฐ๊ฐ ๋ด์ ์ง๋ ๊ฒ์ด ๋ ์ค์ํ ๊ฒ ๊ฐ๋ค๋ ์๊ฒฌ์ ๋๋ค.
ํ์๋ค๋ผ๋ฆฌ ๊ฐ์ ์ถ๊ตฌํ๋ ๋ฐฉํฅ์ด ์กฐ๊ธ์ฉ ๋ฌ๋ผ์ ์๊ฒฌ์ ๊ณตํต๋ ํ๋๋ก ์ทจํฉํ๋๊ฒ ์ฝ์ง๋ ์์๋ค. ํ์ง๋ง ํ์๋ค ๋ชจ๋ “๋ง๋ฌด๋ฆฌ๋ ๊ฒฐ๊ณผ๋ฌผ”์ด ์ค์ํ๋ค๋ ์๊ฒฌ์ ๊ฐ์๊ธฐ ๋๋ฌธ์ ์ด๋ฅผ ํ ๋๋ก ๋ฒ๋ฆด ๊ฒ์ ๊ณผ๊ฐํ๊ฒ ๋ฒ๋ฆฌ๊ธฐ๋ก ํ๋ค.
๋ง์ ๊ณ ๋ฏผ๊ณผ ์๊ฒฌ ์ข ํฉ ๋์ ์นธ๋ฐ๋ณด๋ ์์คํ ์ ๊ณผ๊ฐํ๊ฒ ์ณ๋ด๊ธฐ๋ก ํ๋ค. ๋์ ์ฌ์ฉ์ ์๊ตฌ์ฌํญ ์ ์์์ ์ค์๋ “ํ”๋ก ํ๊ธฐํ๊ณ , ๋ค๋ฅธ ์์ ์ด ๋ง์ฝ ์๊ฐ ๋ด์ ๋๋๋ค๋ฉด ๋ค์ ํ ๋ฒ ๊ณ ๋ฏผํด๋ณด๊ธฐ๋ก ํ๋ค. ๋ฌผ๋ก ๋ค๋ฅธ ์์ ๋ค์ ์ ๋ถ ๊ตฌํํ๋๋ฐ๋ ์๊ฐ์ด ๋ถ์กฑํ๊ธฐ ๋๋ฌธ์ ๋ด์ณ์ง ์นธ๋ฐ๋ณด๋๋ฅผ ๋ค์ ๋ถ๋ฌ์ค๋ ์ผ์ ์ผ์ด๋์ง ์์์ง๋ง ๐ฅฒ
๊ธฐ์กด์ ์นธ๋ฐ๋ณด๋ ์์คํ ์ ํ์ฉํด ํ์ ์์ฒญ๊ณผ ์๋ฝ ๋ฑ์ ๊ธฐ๋ฅ๋ ๋ฃ์ผ๋ ค๊ณ ํ๋๋ฐ, ์นธ๋ฐ๋ณด๋๋ฅผ ๊ตฌํํ์ง ์๋ ๋์ ๋๊ธ์ ํตํด ํ์ ์์ฒญ๊ณผ ์๋ฝ ๊ธฐ๋ฅ์ ๋ฃ๊ธฐ๋ก ํ๋ค.
๊ทธ๋ ๊ฒ ๊ฐ์ง์น๊ธฐ๋ ํ๋ก์ ํธ๋ ๊ธฐ์กด์ ํ์ ๋งค์นญ ์๋น์ค๋ผ๋ ๊ฐ๋ ์ ๊ทธ๋๋ก ๊ฐ์ง๊ณ ๊ฐ๋, ์ฐ๋ฆฌ๊ฐ ์ถ๊ตฌํ๊ณ ์ ํ๋ ๊ฒ์ฆ๋ ์ ์ ํ๋กํ์ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด ๊ฐ์ธ ํ๋กํ(๋ง์ดํ์ด์ง)์ ๋ ์์ธํ๊ณ ๋ง์ ์ ๋ณด๋ฅผ ๋ด์ ์ ์๋๋ก ํด๋ณด๊ธฐ๋ก ํ๋ค.
ํ๋ฉด์ ์์ ์์ฑ ๋ฐ ๋์์ธ ์์
์ ์ฒด์ ์ธ ๊ธฐํ ํ์๊ฐ ๊ฑฐ์ ๋ง๋ฌด๋ฆฌ๋๊ณ , ํ๋ก ํธ ํ์์๋ ํ๋ฉด์ ์์์ ๋์์ธ ์์ ์ ์์ํ๋ค. ํ๋ฉด์ ์์๋ฅผ ์์ ํ๋๋ฐ๋ ์๊ฐ์ด ๊ฝค ๊ฑธ๋ฆด๊ฒ ๊ฐ์์ ์ฃผ๋ง๊ณผ ์์ ์ด ๋๋๊ณ ๋จ๋ ์๊ฐ์ ํํํ ํ๋ฉด์ ์์๋ฅผ ํ์ํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ๋ฏธ๋ฆฌ ์์ฑํด๋์๋ค. ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์๋ค๊ณผ ๊ฒํ ๋ฅผ ํ๋ฉฐ ์์ ํ ๋ถ๋ถ๊ณผ ์ถ๊ฐํ ๋ถ๋ถ์ ํจ๊ป ์์ ํ๋ค. ํ๋ฉด์ ์์๋ฅผ ์์ฑํ๋ฉด์ ์ ์ฒด์ ์ธ ํ์ ๊ณตํต์ผ๋ก ๊ฐ์ ธ๊ฐ๋, ๋ํ ์ผํ ๊ธฐ๋ฅ์ ์์ ์์ ์ฌ๋๊ณผ ์์ ๋์ ๋งก๊ธฐ์๋ ์ด์ผ๊ธฐ๊ฐ ๋ง์ด ๋์๋ค. ์ง์ ๊ธฐํ๋ถํฐ ํ๊ฒ ๋๋ ์ข ๋ ์ ๋์ ์ธ ์์ ์ด ๊ฐ๋ฅํด์ง๋ ๊ฒ ๊ฐ๊ธฐ๋ ํ์ง๋ง, ์๋ฌด๋๋ ๊ฑฐ์ ์ผ์ฃผ์ผ๊ฐ ๊ธฐํํ์๋ง ํ๋ค๋ณด๋ ํ์๋ค ๋ชจ๋ ์กฐ๊ธ์ ์ง์น ์ํ์ฌ์ ์ข ๋ ์์ ๋๊ฐ ๋ถ์ฌ๋์๋ ๊ฒ ๊ฐ๋ค.
โพ๏ธ Figma๋ฅผ ์ฌ์ฉํ ํ๋ฉด์ ์์์ ๋์์ธ ์์
ํ๋ฉด์ ์์์๋ UI ๊ตฌํ๊ณผ ๊ฐ๋ฐ์ ํ์ํ ๋ชจ๋ ์ฌํญ์ ์์ฑํ๋ค. ํ๋ฉด์ ์์์ ๋์์ธ ํ์ผ ๋ง์ผ๋ก ๋ ผ์ํ๋ ๋ถ๋ถ์ ๋ํด์๋ ๊ฐ๋ฐ์ด ๊ฐ๋ฅํ๋๋ก ํ๋ ๊ฒ์ด ๋ชฉํ์๋ค. ์์ ํ์ ๋ฐฑ์๋ ํ์๋ถ๋ค๊ณผ ๊ณต์ ํ๊ณ , ์๋ก ํ์ธํ๋ฉด์ ๊ฐ๋ฐ ์์ ์ ๋ค์ด๊ฐ๋ค. ์ ๋ง ๋ํ ์ผํ๊ฒ ์์ฑํ๋ค๊ณ ์๊ฐํ๋๋ฐ๋ ๋ ผ์ํ ๋ถ๋ถ์ด ์๊ฒผ๊ณ , ๋ณ๊ฒฝ ์ฌํญ๋ ์๊ฒผ๋ค.
๋์์ธ์ ์์ ์ ์ข ๋ ๋น ๋ฅด๊ฒ ํ๊ธฐ ์ํด ์์ ํ ํ์ด์ง ๋๋ ํ ๊ฐ์ ๋์์ธํ๊ธฐ๋ก ํ๋ค. ๊ฐ๋ณ๋ก ๋์์ธ์ ํ๊ฒ ๋๋ฉด ์ผ๊ด์ฑ์ด ๋จ์ด์ง ๊ฒ ๊ฐ์์ ๋์์ธ ๊ฐ์ด๋๋ฅผ ๋ช ๊ฐ ์ฐพ์์ ํ์๋ค์๊ฒ ๋ณด์ฌ์ฃผ์๊ณ , ๊ทธ ์ค ํ๊ฐ์ง๋ฅผ ๊ณจ๋ผ ๊ฐ์ด๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ ํ๊ธฐ๋ก ํ๋ค. ๋ฉ์ธ์ปฌ๋ฌ์ ์๋ธ์ปฌ๋ฌ, ํฐํธ๋ฅผ ์ ํ๊ณ , ํ๋ฉด ์ ์์์ ํ์๋ UI ์ปดํฌ๋ํธ ์ค ํ์ํ ๋ถ๋ถ์ด ๋์์ธ ๊ฐ์ด๋์ ์๋์ง ํ์ธํ๊ณ , ์์ผ๋ฉด ์ถ๊ฐํ๋ ๋ฐฉ์์ผ๋ก ์งํํ๋ค.
๐ง ๊ฐ๋ฐ์ ๋ค์ด๊ฐ๊ธฐ ์ ์ ๊ณตํต์ผ๋ก ์ฌ์ฉ๋ ์ปดํฌ๋ํธ(ex. button)๋ฅผ ๋ฏธ๋ฆฌ ํ์ ํด๋๊ณ , ํ ์ฌ๋์ด ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์ปดํฌ๋ํธ๋ก ๋ฏธ๋ฆฌ ๋ง๋ค์ด๋๊ณ ๋ค๋ฅธ ์ฌ๋๋ค์ ๊ทธ ์ปดํฌ๋ํธ๋ฅผ ๊ฐ์ ธ๋ค ์ฌ์ฉํ๋ ๋ฐฉ์์ผ๋ก ์์ ํ๋ค๋ฉด ์ ๋ง ์ข์์ ํ ๋ฐ ์์ฝ๊ฒ๋ ๋์ณค๋ ๋ถ๋ถ์ด์๋ค.
๊ฒฐ๊ตญ ๊ฐ์ ์์ ํ ํ์ด์ง ๋ด์์ ๊ฐ์ ์ปดํฌ๋ํธ๋ฅผ ๋ง๋ค์ด ์ฌ์ฉํ์๋ค.
<์์ ๋ถ๋ฐฐ>
- ๋ก๊ทธ์ธ/ํ์๊ฐ์ & Header, Footer → ํ์ 1
- ํ์ฐพ๊ธฐ/ํ์์ฐพ๊ธฐ ๊ฒ์ํ → ๐๐ปโ๏ธ ๋
- ๋ง์ดํ์ด์ง → ํ์ 2
์์ ๋ถ๋ฐฐ๋ ์์ ๊ฐ์ด ์งํ๋์๋ค. ๋ค๋ค ํ๊ณ ์ถ์ ํ์ด์ง๋ฅผ ๋จผ์ ์ ํํ๋ผ๊ณ ํ๋ฉฐ ๊ณ ๋ฅด์ง ์๊ณ ์์ด์ ๋ด๊ฐ ๋จผ์ ๊ฒ์ํ ๋ถ๋ถ์ ๊ณจ๋๋ค. ํ๋ฆฌ ํ๋ก์ ํธ ๋ ๋ก๊ทธ์ธ์ ํด๋ดค๋ ํฐ๋ผ ๊ฒ์ํ CRUD ๊ธฐ๋ฅ์ ํด๋ณด๊ณ ์ถ์ ๋ง์์ด ์์๋๋ฐ, ํ์ ๋ ๋ถ ๋ชจ๋ ์๋ก ๋จผ์ ๊ณ ๋ฅด๋ผ๊ณ ํด์..ใ ใ ํ๊ณ ์ถ์๊ฑธ ๋จผ์ ๊ณจ๋๋ค. ๐
๋ก๊ทธ์ธ๊ณผ ํ์๊ฐ์ ์ ์ธ์ฆ/์ธ๊ฐ ์ ๋ฐ์ ๊ฑธ์ณ์ง ์์ ์ด๋ผ ๋ฐ๋ก ๋บ๊ณ , auth๋ฅผ ๋ด๋นํ๊ฒ ๋ ์ฌ๋์ด ๊ฑฐ์ ๋ชจ๋ ํ์ด์ง์ ๋ค์ด๊ฐ Header์ Footer๋ฅผ ์์ ํ๊ธฐ๋ก ํ๋ค. ํ์ฐพ๊ธฐ/ํ์์ฐพ๊ธฐ ๊ฒ์ํ์ ์น์ฌ์ดํธ์ ์ ์ฒด ๊ฒ์ํ์ผ๋ก ๊ณตํต๋ ๋ถ๋ถ์ด ๋ง์๊ธฐ ๋๋ฌธ์ ๋ด๊ฐ ํ๋ฒ์ ๊ฐ์ ธ๊ฐ๋ค๊ณ ํ๋ค. ๋ง์ดํ์ด์ง๋ ์ ๋ ๊ฒ ํ๋๋ง ๋ณด์ฌ์ ์์ด ์ ์๊ฑฐ๋ผ ์๊ฐ๋์ง๋ง, ๋ง์ดํ์ด์ง ๋ด์์๋ ํ์ด์ง๊ฐ ๋ช ๊ฐ ๋๋์ด์ ธ ์์ด ๋์์ธ๊ณผ ๊ฐ๋ฐ ์์ ์ ํ ๋ถ๋ถ์ด ์ ์ง ์์ ํ ์ฌ๋์ด ๋ด๋นํ๊ธฐ๋ก ํ๋ค.
๐ง ์์ ์ด ์ด๋์ ๋ ์งํ๋๊ณ ๋์ ์๊ฐํด๋ณด๋ ์์ ์ ์ข ๋ ์ธ๋ถ์ ์ผ๋ก ๋๋์์ด์ผ ํ๋, ๋ผ๋ ์๊ฐ๋ ๋ค์๋ค. ํ์1์ด ๋งก์ ๋ถ๋ถ์ ์์ ์ด ์์๋ณด๋ค ๋นจ๋ฆฌ ๋๋ฌ๊ณ , ๋์ ํ์3๋์ด ์๊ฐ๋ณด๋ค ๋ง์ ๋ถ๋ถ์ ์์ ํ๊ณ ์์๊ธฐ ๋๋ฌธ์ด๋ค. ๋ด๊ฐ ๋งก์ ๊ฒ์ํ๋ง ํด๋ ํํ๋ ๋น์ทํด ๋ณด์์ง๋ง, UI ์์ ํ ๊ฒ๋ ์๊ฐ๋ณด๋ค ๋ง์๊ณ , HTTP ํต์ ๋ ๋ง์๋ค. ๋๊ธ๋ ๋ํ ์ผํ ๋ถ๋ถ์ด ๋ง์์ ๊ทธ ๋ถ๋ถ๊น์ง ์์ ํ๋ ค๊ณ ํ๋ ์์ํ๋ ๊ฒ๋ณด๋ค ์๊ฐ์ด ์ข ๋ ๋ง์ด ๊ฑธ๋ ธ๊ณ , ๋ค๋ฅธ ํ์๋ถ๋ ์์ ๋ด๋ด ์์ฒญ ๋ฐ์ ๊ฒ ๊ฐ์๋ค. ๊ทธ๋๋ ์ฌ์ค ๋ด๊ฐ ํ๊ณ ์ถ์ด์ ํ ๋ถ๋ถ์ด๋ผ ๋ง์กฑ์ค๋ฌ์ ์ง๋ง, ๋ฐ์ ์ผ์ ์ผ๋ก ๊ธฐ๋ฅ์ด ๋จ์ง ๋์ํ๋ค๋ ๊ฒ์๋ง ์ ๊ฒฝ์ ์ผ๋ค๋ ์ ์ ์์ฌ์ ๋ค.
๊ฐ๋ฐํ๊ฒฝ ์ธํ
์ฌ์ฉ์ ์๊ตฌ์ฌํญ ์ ์์๋ ๋คํจ๊ป ์์ฑํ๊ณ , ํ๋ก ํธ์๋ ํ์๋ค์ ์ ์ ํ๋ก์ฐ์ ํ๋ฉด์ ์์, ๋์์ธ ์์ ์ ํ๊ณ , ๋ฐฑ์๋ ํ์๋ค์ด ERD ์์ ์ ๋ง๋ฌด๋ฆฌํ๋ค. (API ๋ช ์ธ์๋ ๊ฐ๋ฐ ์ค์ ๊ณ์์ ์ผ๋ก ์ ๋ฐ์ดํธ๋ฅผ ํด์ฃผ์๋ค.)
๐๐ป ๋ณธ๊ฒฉ์ ์ผ๋ก ๊ฐ๋ฐ ์์ ์ ๋ค์ด๊ฐ๊ธฐ ์ ์ ํจ๊ป ์ฌ์ฉํ Git Convention์ ์ ํ๋ค. ์ฝ๋์คํ ์ด์ธ Repository์์ ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ํจ๊ป ์์ ์ด ๋์ด์ผ ํ๊ธฐ ๋๋ฌธ์ Git Flow๋ ์ ์ฉํ๊ธฐ๋ก ํ๋ค.
๐๐ป Github Projects์ ์นธ๋ฐ๋ณด๋์ Milestones๋ ์ ๊ทน์ ์ผ๋ก ์ฌ์ฉํ๊ธฐ๋ก ํ๋๋ฐ, ๋ฑํ ๊ท์น์ ์ ํ์ง๋ ์์๊ณ , Agileํ๊ฒ ์คํ๋ฆฐํธ ๋จ์๋ก ๊ฐ๋ฐํ ๊ฒ๋ ์๋์ด์ ๊ทธ๋ฐ์ง ์ด ๋ถ๋ถ์ ์กฐ๊ธ ํ์ง๋ถ์ง ๋์๋ ๊ฒ ๊ฐ๊ธฐ๋ ํ๋ค. ๋๋ ๊ธฐ๋กํ๋ ๊ฑธ ์ข์ํ๋ ํธ์ด๋ผ ์ ๊ทน์ ์ผ๋ก ์ฌ์ฉํ์๊ณ , ์์ผ๋ก์ ํ๋ก์ ํธ์์๋ ์นธ๋ฐ๋ณด๋๋ ํ์๊ฐ ์๋๊น ์๊ฐ์ด ๋ค์๋ค.
๐๐ป ํ๋ก ํธ ํ์ ๋ถ๊ป์ ํ๋ก์ ํธ๋ฅผ Vite๋ก ํ์๊ณ ํด์ Vite์ React + TS๋ก ์ธํ ์ ํด์ฃผ์๋ค. ์ฌ์ฉํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๊ธฐํ ์ด๊ธฐ ์ธํ ์ ๋ด๊ฐ ํด์ git์ ์ฌ๋ฆฌ๊ธฐ๋ก ํ๋ค.
(์ฐ์ 1์ฃผ์ฐจ ํ๊ณ ๋ ์ฌ๊ธฐ๊น์ง! ๋๋จธ์ง ์ด๊ธฐ ์ธํ ์ 2์ฃผ์ฐจ ํ๊ณ ์์ ๐๐ป)
โพ๏ธ FE ๊ธฐ์ ์คํ์ ๋ํ STORY
๐ค FE ๊ธฐ์ ์คํ
- React (Vite), TypeScript, Module CSS, Redux toolkit
๊ธฐํ๊ณผ ๋์์ธ ์์ ๊น์ง ๋ง๋ฌด๋ฆฌํ๊ณ ๋์์ผ ๊ฐ์ธ ๊ณต๋ถ๋ฅผ ํ ์๊ฐ์ด ๋ฌ๋ค. ์ผ์ฃผ์ผ๋ง์ ๊ธฐํ ํ์์ ํ๋ฉด์ ์์ ์์ , ๋์์ธ๊น์ง ํ๋๋ผ ๊ฐ์ธ ๊ณต๋ถํ ์๊ฐ์ด ํ๋๋ ์์๋ค. TypeScript์ Redux Toolkit์ ์ฌ์ฉํ๊ธฐ๋ก ํ๋๋ฐ, ํ๋ก์ ํธ์ ์ ์ฉํ๋๊ฑด ์ฒ์์ด๋ผ ์ต์ํ์ง ์์ ๋ถ๋ถ์ด ๋๋ฌด ๋ง์๊ธฐ ๋๋ฌธ์ ๋ฐ๋ก ํ์ตํ ์๊ฐ์ด ํ์ํ๋ค.
Redux Toolkit ๋ถํฐ ํ์ต์ ํ๊ณ , TypeScript๋ฅผ ์ ์ฉํ๋ ๊ฑธ ํ์ตํ๊ธฐ๋ก ํ๋ค. ์กฐ๊ธ ์์ฌ์ ๋ด์ ํ์ ์คํฌ๋ฆฝํธ์ ๋ฆฌ๋์ค ํดํท๊น์ง ์ฌ์ฉํ์๊ณ ํ๊ฑฐ๋ผ ์ํ๊ณ ์ถ๋ค๋ ์๊ฐ์ด ๋ค์๋ค.
์ฐ๋ฆฌ๋ ์ ํ์ ์คํฌ๋ฆฝํธ๋ฅผ ๋์ ํ๋ ค ํ์๊น?
์์งํ๊ฒ ์๊ธฐํ์๋ฉด, ๊ฐ์ฅ ํฐ ์ด์ ๋ ํ์ ์คํฌ๋ฆฝํธ๋ผ๋ ์คํฌ์ด ๊ตฌ์ง์ ํ์ํ๊ธฐ ๋๋ฌธ์ด๋ค. ์ ์ ํ๋ก ํธ์๋ ์ฑ์ฉ๊ณต๊ณ ๋ฅผ ๋๋ฌ๋ณด๋ค๋ณด๋ฉด ํ์ ์คํฌ๋ฆฝํธ๊ฐ ์ ๋ง ๋ง์ด ๋ฑ์ฅํ๊ธฐ ๋๋ฌธ์ ํ๋ก์ ํธ๋ฅผ ํ๋ฉฐ ํ ๋ฒ์ฏค์ ์ฌ์ฉํด๋ด์ผ ํ ๊ฒ ๊ฐ์๋ค. ๊ทธ๋ฌํ ์ด์ ๋ก ํ์ ์คํฌ๋ฆฝํธ์ ๋์ ์ ์ ๊ทน์ ์ผ๋ก ์๊ธฐํ๋๋ฐ, ์ด๋ก ์ ์ผ๋ก ์ ๊ทผํ์๋ฉด ํ์ ์คํฌ๋ฆฝํธ๋ฅผ ์ฐ์ง ์์ ์ด์ ๊ฐ ์๋ค๋ ๊ฒ๋ ์ฌ์ค์ด๋ค.
ํ์ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ์ ๋์ ๋จ์ ์ ๋ฌ๋์ปค๋ธ๊ฐ ์๋ค๋ ๊ฒ ์ ๋๊ฒ ์ง๋ง, ์ฅ์ ์ ํจ์ฌ ๋ง๋ค. ํ์ ์คํฌ๋ฆฝํธ๋ ์ ์ ํ์ ๊ฒ์ฌ ๊ธฐ๋ฅ์ ์ง์ํ์ฌ ๋ฐํ์ ์๋ฌ๋ฅผ ๋ฐฉ์งํ๋ฉฐ, ํ์ ์ ๋ช ์ํจ์ผ๋ก์จ ์ฝ๋์ ์๋ ๋ํ ๋ช ํํด์ง๊ธฐ ๋๋ฌธ์ ํ์ ์ ์ฝ๋์ ๊ฐ๋ ์ฑ๋ ๋์ฌ์ค๋ค. ๋ํ ๊ฐ๋ฐํ๊ฒฝ์์ ์๋์์ฑ ๋ฑ์ ๊ธฐ๋ฅ์ ํตํด ๊ฐ๋ฐ์ ํจ์จ์ฑ๋ ๋์ฌ์ฃผ๋ฉฐ, Interface, Generic๊ณผ ๊ฐ์ ๊ธฐ๋ฅ์ ์ง์ํ๊ธฐ ๋๋ฌธ์ ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ๋ณด๋ค ์ฝ๊ฒ ํ ์ ์๋ค๋ ์ฅ์ ์ด ์๋ค.
์ํ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ Redux Toolkit์ ์ฌ์ฉํ๊ธฐ๋ก ํ์๊น?
์ฐ์ ์ ๋ก๊ทธ์ธ ๋ฑ์ auth ๊ธฐ๋ฅ์ ๊ตฌํํ๊ณ , ํ์ฅํ๊ธฐ ์ํด์๋ ์ํ๋ฅผ ์ ์ญ์ผ๋ก ๊ด๋ฆฌํ ํ์์ฑ์ด ์์๊ธฐ ๋๋ฌธ์ ์ํ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ํ๋ค.
์์งํ๊ณ ํ์ค์ ์ผ๋ก ์๊ธฐํ์๋ฉด Redux ๋ง๊ณ ๋ ์ฌ์ฉํ ์ค ์๋ ์ํ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์์๋ค. (React์ Context API ์ ์ธ. Context API๋ ๋์ ๋ค๋ฅธ ํ์๋ถ์ด ํ๋ฆฌ ํ๋ก์ ํธ์์ ์ฌ์ฉํด๋ดค๊ธฐ ๋๋ฌธ์ ๋ค๋ฅธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๊ณ ์ถ์ดํ๋ค.) Recoil์ด๋ zustand ๋ฑ์ ์๋ก์ด ์ํ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์๋ ์ญ์ ํ์ต์ด ํ์ํ๊ธฐ ๋๋ฌธ์ ๋ถํธ์บ ํ์์ ๋ฐฐ์ ๋ Redux๋ฅผ ๋ณด๋ค ๊ฐํธํ๊ณ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ Redux Toolkit์ ์ ์ํ๋ค. ๊ฒ๋ค๊ฐ Redux ๊ณต์ ์น์ฌ์ดํธ์์๋ Toolkit์ ๊ถ์ฅํ๊ณ ์์ผ๋, Toolkit์ ์ฌ์ฉํด์ฃผ์ด์ผ์ง.
Redux Toolkit์ ์ํ๊ด๋ฆฌ๋ฅผ ์ํด ๋ง์ ์ฝ๋๋ฅผ ์์ฑํด์ผ ํ๋ Redux์ ๋ฒ๊ฑฐ๋ก์์์ ๋ฒ์ด๋ ์ข ๋ ์ง๊ด์ ์ด๊ณ ๊ฐ๊ฒฐํ ์ฝ๋๋ฅผ ์์ฑํ ์ ์๊ธฐ ๋๋ฌธ์ ์ฝ๋์ ๊ฐ๋ ์ฑ๊ณผ ์ ์ง๋ณด์์ฑ์ ํฅ์์ํฌ ์ ์๋ค๋ ์ฅ์ ์ด ์์ผ๋ฉฐ, ๋น๋๊ธฐ ์์ ์ ์ฒ๋ฆฌํ๊ธฐ ์ํ createAsyncThunk์ ๊ฐ์ ์ ํธ๋ฆฌํฐ ํจ์๋ฅผ ์ ๊ณตํ์ฌ ๋น๋๊ธฐ ์ฝ๋๋ ๊ฐํธํ๊ฒ ์์ฑํ ์ ์๋ค๋ ์ฅ์ ์ด ์๋ค.
Redux Toolkit๋ ์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ํ๋ฉฐ ์ฒ์ ์ฌ์ฉํด๋ดค๋๋ฐ, ํ์คํ Redux์์ ๋ฒ๊ฑฐ๋กญ๊ฒ ์์ฑ๋๋ ์ฝ๋๋ฅผ ํจ์ฌ ๊ฐ๊ฒฐํ๊ฒ ์์ฑํ ์ ์๋ค๋ ์ ์์ ํธ๋ฆฌํ๋ค.
๋ฉํ ๋ง ์ธ์ ์์ React Query๋ ์ ์ํ์ จ๋๋ฐ, ์ด ๋ํ ๊ฐ์๊ธฐ ์ฌ์ฉํ๊ธฐ์๋ ํญํ๊ฐ์๊ธฐ ๋๋ฌธ์ ๋ณด๋ฅํด๋์์ง๋ง ํ๋ก์ ํธ๊ฐ ๋๋ ํ์ ํ์ตํ ์ํฅ์ด ์์๋ ํฐ๋ผ ๋ฐ๊ฐ๊ฒ ๋ค๋ ธ๋ค.
CSS๋ ์ด๋ป๊ฒ ์์ ํ ๊น?
CSS๋ Module CSS๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ํ๋ค. ์์ฆ ๋ง์ด ์ฌ์ฉํ๋ Tailwind CSS ์๊ฒฌ๋ ๋์์๋๋ฐ, ์ด ๋ํ 3๋ช ๋ชจ๋ ํ์ต์ด ํ์ํ๊ณ , ์ปค์คํฐ๋ง์ด์ง์ด ์์ ๋กญ์ง ์์ ๊ฑฐ๋ผ๋ ์๊ฐ์ ๋ฐฐ์ ์์ผฐ๋ค. (ํ๋ก์ ํธ๊ฐ ๋๋๊ณ ๋์ ์๊ฐํด๋ณด๋, Tailwind CSS๋ ์ข์ ๋ฐฉ๋ฒ ์ค ํ๋๊ฐ ๋์์์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์๋ค. ์ฌ์ฉํด๋ณธ์ ๋ ์๋๋ฐ ๋ฌดํฑ๋๊ณ ๋ถ์ ์ ์ธ ์๊ฒฌ์ ๋งํ ๊ฒ์ด ์ข์ ๋ฐฉ๋ฒ์ ์๋์๋ ๊ฒ ๊ฐ๋ค.) ๋ถํธ์บ ํ์์ ํ์ตํ๋ Styled-components๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๋ ๊ด์ฐฎ์๋๋ฐ, ๋ค๋ฅธ ํ์๋ค์ด ์ ํธํ์ง ์๋ ๊ฒ ๊ฐ์์ ์ ์ธํ๋ค. CSS๋ฅผ ํตํฉ์ผ๋ก ์ฌ์ฉํ์๋ className์ ์ค๋ณต์ด ์ฐ๋ ค๋์ด Module CSS๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ํ๋ค. ๋น๊ต์ ๊ฐ๋จํ๊ณ , ๋ฌ๋์ปค๋ธ๊ฐ ์์ผ๋ฉด์๋ ์ค๋ณต๋ className์ ์ฐ๋ ค๊ฐ ์๋ค๋ ์ ์์ ํ์ฌ ํ์ ์คํฌ๋ฆฝํธ์ RTK ๋ง์ผ๋ก ๋ฒ ์ฐจ๋ ์ฐ๋ฆฌ์๊ฒ ์ต์ ์ ์ ํ์ด์๋ค.
๊ฐ๋ฐ ๋ถํธ์บ ํ๋ฅผ ํ๋๋ฐ ๊ธฐํ๊ณผ ๋์์ธ๊น์ง ํ๋ ค๊ณ ํ๋ ์ฌ์ค ์ง์ด ๋ค ๋น ์ก๋ค. ๊ธฐํ๋ถํฐ ์์ํด์ ๋ฌด์ธ๊ฐ๋ฅผ ๋ง๋ ๋ค๋๊ฒ ์ซ์ง๋ ์์ง๋ง, ๋ ์ค๋ฅด๋ ์์ด๋์ด๊ฐ ๋ ์ข์๋ค๋ฉด ํจ์ฌ ๋ ์ฌ๋ฏธ์๋ ์์ ์ด ๋์์ ๊ฒ ๊ฐ์ ์์ฌ์ด ๋ง์์ด ์์๋ ๊ฒ ๊ฐ๋ค. ๋ฌด์ธ๊ฐ ํน๋ณํ๊ณ ๋ ์ฌ๋ฏธ์๋๊ฑธ ํ๊ณ ์ถ์๋๋ฐ, ์ด๋ฏธ ํํ ์ฃผ์ ์ ํ๋ก์ ํธ๊ฐ ๋์ด๋ฒ๋ ธ๋ค๋ ์๊ฐ๋ ๋ค์๋ค. ํ์ง๋ง ๋ด๊ฐ ๊ธฐํํ ์น์ฌ์ดํธ๋ฅผ ํ๋ก ํธ ๊ฐ๋ฐ์ ํ๋ ๊ฒ์ ์ฒ์์ด๋ผ๋ ์ ์์ ์ค๋ ๋ ๊ฐ๋ํ๋ค. ๋๋์ด ๊ฐ๋ฐ๋จ๊ณ์ ์ง์ ํ๋ค!