๐ย ์ ๋ณด
- ๊ธฐ๊ฐ: 2024. 01 ~ 2024. 08
- ์ญํ : ํ
์ผ์ฆ๋ฐ๋ ์ด๋๋ฏผ ํ๋ก ํธ ๊ฐ๋ฐ
- ์ฐธ์ฌ์ธ์: 2๋ช
- ์ฌ์ฉ ๊ธฐ์ : React, TypeScript, TanStack Query, React-Hook-Form, Jotai
๐ย ์์
๋ด์ฉ
- ์ ๋ฐ์ ์ธ ํ๋ก์ ํธ ์ํ
- ํ๋ก์ ํธ ์ด๊ธฐ ๊ธฐํ ๋จ๊ณ์์๋ถํฐ ์ฐธ์ฌํ์ฌ ์๊ตฌ ์ฌํญ ๋ถ์, ํ์ด์ง ์ค๊ณ, ๋ฐ์ดํฐ ํ๋ฆ ์ ์ ๋ฑ ์ ์ฒด์ ์ธ ํ๋ก์ ํธ ์งํ์ ํ์์ต๋๋ค.
- ํ๋ก ํธ์๋ ๊ฐ๋ฐ
- ์ค๊ณ ๋ฐ ๊ตฌํ: CRUD ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์ํด React์ TypeScript๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ ํ์ด์ง๋ฅผ ์ค๊ณํ๊ณ ๊ฐ๋ฐํ์ต๋๋ค. ์ฃผ์ ํ์ด์ง๋ก๋ ์์ฑ, ์์ธ๋ณด๊ธฐ, ์์ , ๋ฆฌ์คํธ ํ์ด์ง๊ฐ ํฌํจ๋์์ต๋๋ค.
- ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋ฐ ์ต์ ํ: React-Query๋ฅผ ํ์ฉํ์ฌ ํจ์จ์ ์ธ ๋ฐ์ดํฐ ํจ์นญ ๋ฐ ์บ์ฑ์ ๊ตฌํํ๊ณ , React Router์ lazy์ loader ๊ธฐ๋ฅ์ ํตํด ์ด๊ธฐ ๋ก๋ฉ ์๋๋ฅผ ๊ฐ์ ํ์ต๋๋ค.
- ์
๋ ฅ ํผ ๊ด๋ฆฌ: React Hook Form์ ์ฌ์ฉํ์ฌ ๋ณต์กํ ์
๋ ฅ ํผ์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๊ณ ๊ฒ์ฆ ๊ธฐ๋ฅ์ ๊ฐ์ํํ์ฌ ๊ฐ๋ฐ ํจ์จ์ฑ์ ๋์์ต๋๋ค.
๐ย ๊ฐ๋ฐ ํ๋ก์ธ์ค ๋ฐ ์ ๊ทผ ๋ฐฉ์
- React-Query๋ฅผ ํ์ฉํ ๋ฐ์ดํฐ ์ต์ ํ
- React-Hook-Form์ ํ์ฉํ ํผ ์ํ ๊ด๋ฆฌ ์ต์ ํ
- React-Router์ ๋์ ๋ผ์ฐํ
์ ํ์ฉํ ํ์ด์ง ๊ตฌ์ฑ
๐ย ํ๊ณ
ํ๋ก์ ํธ๋ฅผ ์ค๊ณํ๋ฉด์ ์ฌ๋ฌ ๊ฐ์ง ์ํ์ฐฉ์ค๋ฅผ ๊ฒช์์ต๋๋ค. ํนํ, ๊ณตํต ์ปดํฌ๋ํธ๋ฅผ ์ค๊ณํ ๋ ์ง๋์น๊ฒ ๋ฒ์ฉ์ ์ด๊ณ ํฐ ์ปดํฌ๋ํธ๋ฅผ ๋ง๋ค๋ ค๋ ์์ฌ์ด ์์์ต๋๋ค. ์ฒ์์๋ ํ๋์ ์ปดํฌ๋ํธ๋ก ๋ง์ ๊ธฐ๋ฅ์ ์ฒ๋ฆฌํ๋ ค ํ๊ณ , ๊ทธ๋ ๊ฒ ํ๋ ค๋ฉด ์ปดํฌ๋ํธ๊ฐ ๋๋ฌด ์ปค์ง๊ณ ๋ณต์กํด์ก์ต๋๋ค. ๊ทธ ๊ฒฐ๊ณผ, ์ฝ๋๊ฐ ์ ์ ๋ณต์กํด์ง๋ฉฐ ์ ์ง๋ณด์ํ๊ธฐ ์ด๋ ค์์ก์ต๋๋ค. ์ด๋ฌํ ๊ฒฝํ์ ํตํด, ๊ฐ ์ปดํฌ๋ํธ๊ฐ ๋งก์ ์ญํ ์ ๋ช
ํํ๊ฒ ์ ์ํ๊ณ , ํ๋์ ์ปดํฌ๋ํธ๊ฐ ๋๋ฌด ๋ง์ ์ฑ
์์ ์ง์ง ์๋๋ก ์ธ๋ถํํ๋ ๊ฒ์ด ์ผ๋ง๋ ์ค์ํ์ง ๊นจ๋ซ๊ฒ ๋์์ต๋๋ค.
์ปดํฌ๋ํธ๋ฅผ ์์ ๋จ์๋ก ๋๋๋ ๊ฒ์ ์ฅ์ ์ ํ์ฅ์ฑ๊ณผ ๊ฐ๋
์ฑ์ ์ ์งํ๋ ๋ฐ ํฐ ๋์์ด ๋๋ค๋ ์ ์ด์์ต๋๋ค. ์์ ์ปดํฌ๋ํธ๋ ์ฝ๋์ ์ฑ
์์ด ๋ช
ํํ๊ณ , ๋ณํ๊ฐ ์๊ธฐ๋๋ผ๋ ๋ค๋ฅธ ๋ถ๋ถ์ ๋ฏธ์น๋ ์ํฅ์ด ์ ๊ธฐ ๋๋ฌธ์, ํ๋ก์ ํธ๊ฐ ์ปค์ง์๋ก ๊ด๋ฆฌ๊ฐ ์์ํด์ก์ต๋๋ค. ์ด๋ฅผ ํตํด ์ ๋ '์๊ณ ๋ช
ํํ ์ญํ ์ ๊ฐ์ง ์ปดํฌ๋ํธ ์ค๊ณ'์ ์ค์์ฑ์ ๊น์ด ์ดํดํ๊ฒ ๋์์ต๋๋ค.