๐ ๋ชฉ์ฐจ
- React ์ํ๊ด๋ฆฌ, ์ ๋ค์ ์ด์ผ๊ธฐํ๋๊ฐ
- Zustand ์ ํ๊ณผ ์คํด
- Zustand์ ํน์ง
- SSR ์คํด์ ์ง์ง ๋ฌธ์
- Recoil๋ก ์ ํํ ์ด์
- Provider ๊ธฐ๋ฐ ๊ด๋ฆฌ
- ๊ทธ๋ฌ๋ Next.js 14/15 ๋์ ๋ฌธ์
- Jotai๋ก ๋ค์ ๊ฐ์ํ ์ด์
- Jotai์ ์ค๊ณ ์ฒ ํ
- Context API ๋์ Jotai๋ฅผ ์ด ์ด์
- Jotai ์ฌ์ฉ ์ ๋ฐ์ํ ์ฃผ์ ์ด์
- ๊ธ๋ก๋ฒ ์ํ ๊ณต์ ๋ฌธ์ (์ด์ #404)
- SSR ํ๊ฒฝ์์ ์ํ ๋ถ๋ฆฌ ํ์
- Jotai + React Query ํตํฉ ์ด์ ์ค ๊ฒช์ ์ด์
- ์ํฐ ์ด๊ธฐํ ๋ฌธ์
- ์ ์ญ ์ํฐ๊ณผ ๋ผ์ฐํ
๊ฐ ๋ฐ์ดํฐ ๊ณต์
- Optimistic Update ์ ๋ต
- invalidateQuery ํ์/๋ถํ์ ๊ตฌ๋ถ
- useInfiniteQuery ๋์ useQuery๋ฅผ ์ถ์ฒํ๋ ์ด์
- Optimistic Update ์ ์ฃผ์์ (cancelQueries, setQueryData, fresh data)
- ๋ง๋ฌด๋ฆฌ: ์ํ๊ด๋ฆฌ ์ ํ ๊ธฐ์ค์ ๋ํ ์ธ์ฌ์ดํธ
Chapter 1. ๋ฆฌ์กํธ ์ํ๊ด๋ฆฌ๋ ๋ฌด์์ธ๊ฐ?
1.1 ์ํ(State)์ ์ญํ
๋ฆฌ์กํธ์์ ์ํ(State)๋ ์ปดํฌ๋ํธ๊ฐ ๋ ๋๋งํ๋ UI๋ฅผ ๊ฒฐ์ ํ๋ ๋ฐ์ดํฐ๋ค.
์ํ๋ ์ปดํฌ๋ํธ ๋ด๋ถ์์ ๋ฐ๋ ์ ์์ผ๋ฉฐ, ๋ณ๊ฒฝ๋ ๋๋ง๋ค ๋ฆฌ์กํธ๋ ์๋์ผ๋ก UI๋ฅผ ๋ค์ ๋ ๋๋งํด์ค๋ค.
๊ฐ๋จํ ๋งํ๋ฉด, ์ํ = UI๋ฅผ ๋ฐ๊พธ๊ฒ ๋ง๋๋ ๋ฐ์ดํฐ๋ค.
์ด๊ธฐ์๋ ๋ฒํผ ํด๋ฆญ์ ๋ฐ๋ผ ํ
์คํธ๊ฐ ๋ฐ๋๋ ์ ๋์ฒ๋ผ ์ปดํฌ๋ํธ ๋ด๋ถ ์ํ๋ง ๊ด๋ฆฌํ๋ฉด ์ถฉ๋ถํ๋ค.
1.2 ์ ์ํ๊ด๋ฆฌ๊ฐ ํ์ํด์ก๋๊ฐ?
ํ์ง๋ง ์ ํ๋ฆฌ์ผ์ด์
์ด ๋ณต์กํด์ง๋ฉด์ ์ํฉ์ด ๋ฐ๋์๋ค.
- ์ฌ๋ฌ ์ปดํฌ๋ํธ๊ฐ ๊ฐ์ ์ํ๋ฅผ ๊ณต์ ํด์ผ ํ๊ณ