๋ฐ์ํ ๋ ์ด์์์์ ๋ทฐํฌํธ ๋๋น๊ฐ ๋ฐ๋๋ ์๊ฐ, ๋ ๋๋งํ ์์ ๊ฐ์๊ฐ ๋ฆ๊ฒ ์ฌ๊ณ์ฐ๋๋ค. ๋ธ๋ ์ดํฌํฌ์ธํธ๋ฅผ ๋๋ ์๊ฐ ์ ๊น์ด์ง๋ง ์ด์ ๊ฐ์์ ์์๊ฐ ๊ทธ๋๋ก ๋ ธ์ถ๋๋ ํ์์ด์๋ค.
์ฑ๋ฅ ๋ฌธ์ ๋ ์๋์๋ค. ํ์ง๋ง ์ํ ๊ณ์ฐ ์์ ์ด ๋ ๋๋ง๊ณผ ๋ง์ง ์๋ ๊ตฌ์กฐ์ ์ธ ๋ฌธ์ ์๊ณ , ๊ทธ๋ฅ ๋๊ธฐ์ ์ฌ์ฉ์ ๋์ ์ง์ ๋ณด์ด๋ ์ค๋ฅ์๋ค. ์ด ๊ธ์ ๊ทธ ์์ธ์ ์ฐพ๊ณ ํด๊ฒฐํ ๊ณผ์ ์ ๊ธฐ๋กํ๋ค.

๋ฌด์์ด ๋ฌธ์ ์๋๊ฐ
๋ฐ์ํ ํ๊ฒฝ์์ ๋ทฐํฌํธ ๋๋น๋ฅผ ๋ณ๊ฒฝํ๋ฉด ์ฝ 0.1์ด ์ ๋ ์์๊ฐ ์ถ๊ฐ๋๋๋ฐ ์๊ฐ์ด ๊ฑธ๋ ธ๋ค.
์๋๋ผ๋ฉด ๋ทฐํฌํธ 786px(Tablet size)์ ๊ธฐ์ค์ผ๋ก ๋ณด๋ค ํด ๋ 8๊ฐ, ์์ ๋ 6๊ฐ๊ฐ ๋ ๋๋ง ๋์ด์ผํ๋๋ฐ ์๋ ์ฌ์ง๊ณผ ๊ฐ์ด ๋ ๋๋ง ์ง์ฐ ์๊ฐ์ด ๋ณด์ด๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.



์์ธ์ ์ด๋์ ์ฐพ์๋๊ฐ
๊ฐ์ฅ ๋จผ์ , ๋คํธ์ํฌ ํ๊ฒฝ์ ๋ฐ๋ผ ์ง์ฐ์๊ฐ์ด ๋ฌ๋๊ธฐ์ API ํธ์ถ์ ์์ฌํ๋ค.
๋คํธ์ํฌ ์ ํ์ด ์์ ๋, 0.1์ด, 4G ํ๊ฒฝ์์ 0.2~0.3์ด, 3G ํ๊ฒฝ์์ 2์ด์ ๋ ์ฐจ์ด๊ฐ ๋๋๊ฒ์ ํ์ธํ๊ณ ๋คํธ์ํฌ์ ์ง๊ฒฐ๋๋ API ํธ์ถ ๋ถ๋ถ์ ์์ฌํ๋ค.
๊ฐ๋ฐ์ ๋๊ตฌ์ ๋์จ 3G ํ๊ฒฝ์์ 2์ด ์ ๋์ API ํธ์ถ ์๊ฐ์ด ๋ ๋๋ง ์ง์ฐ์ด ๋ฐ์ํ ์๊ฐ๊ณผ ์ผ์นํ๊ณ , API ์์ฒญ์ด ๋น ๋ฅธ ๋ค๋ฅธ ํ๊ฒฝ์์๋ ์ง์ฐ ์๊ฐ์ ๋น๋กํ์ฌ ๋ ๋๋ง ์ง์ฐ์ด ์ผ์ด๋๋ ๊ฒ์ ํ์ธํ ์ ์์๋ค.
๋คํธ์ํฌ ์๋ ์ฆ, API ์๋ต์ UI ์ํ ๋ฐ์ดํฐ๋ก ๋ฐ๋ก ์ฌ์ฉํ ๊ฒ์ ๋ฌธ์ ์ ์์ธ์ผ๋ก ์ผ์๋ค.


UI์ ๋ฐ์ดํฐ ํ์นญ์ ๋ถ๋ฆฌํ๊ธฐ ์ํด ๋ค์๊ณผ ๊ฐ์ด ๊ฐ์ค์ ์ธ์ ๋ค.
๊ฒฐ๋ก ๋ถํฐ ๋งํ์๋ฉด Tanstack React Query๋ฅผ ํ์ฉํ์ฌ ๋ฐ์ดํฐ ํ์นญ๊ณผ UI ์ํ๋ฅผ ๋ถ๋ฆฌํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค.
๊ฐ์ฅ ํฐ ์ด์ ๋ Tanstack React Query์ ๋ฐ์ดํฐ ๊ด๋ฆฌ ํ๋ก์ฐ์ ์๋ค.

์ ํ์ง A ๋ฐ์ํ ํ๊ฒฝ์ ๋ง์ถ ์ํ๋ฅผ ๊ฐ๊ฐ ์ ์ธํ์ฌ ์ฌ์ฉํ์ง ์์ ์ด์
1. ๋ฏธ๋ฆฌ ๋ฐ์ดํฐํ์นญ์ ์๋ํ์ฌ ๊ฐ์ ธ์จ ๋ฐ์ดํฐ๋ฅผ UI์ ๋ฐ์ํ์ฌ ๋ ๋๋ง ์ง์ฐ์๊ฐ์ ๋จ์ถ.
2. ๋ทฐํฌํธ ๋ณ๊ฒฝ ์ ๋ฐ์ดํฐ ํ์นญ ์ ์ธ.
์ ํ์ง B ๋ธ๋ผ์ฐ์ ์บ์ฑ์ ํ์ฉํ API ํธ์ถ ์๊ฐ ๋จ์ถ์ ํ์ฉํ์ง ์์ ์ด์
ํ์ง๋ง ๊ฐ์ฅ ํฐ ๋ฌธ์ ๋ ๋คํธ์ํฌ ํ๊ฒฝ์ด ์๋, ๋คํธ์ํฌ ํ๊ฒฝ์ด ์ฌ์ฉ์์๊ฒ ์ ๋ฌ๋๋ UI์ ์ง์ ์ ์ผ๋ก ๊ด์ฌ๋๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๋ค.
๋ฌด์์ด ๋ฌ๋ผ์ก๋๊ฐ
ํฌ๊ฒ ๋ฌ๋ผ์ง ์ ์ 2๊ฐ์ง๋ค.
- ์บ์ฑ๋๋ ์๊ฐ๋์์ API ํธ์ถ์ด ์ผ์ด๋์ง ์์ ๋ทฐํฌํธ ๋ณ๊ฒฝ ์, ์บ์ฑ๋ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋น ๋ฅด๊ฒ ๋ฐ์ํ ์ ์๋ค.
- ๋คํธ์ํฌ ํ๊ฒฝ์ด UI์ ์ง์ ์ ์ผ๋ก ์ฐ๊ฒฐ๋์ด ์์ง ์์, 3G ๋คํธ์ํฌ ํ๊ฒฝ์์๋ 2์ด์ด์ ๊ฑธ๋ฆฌ๋ ์์ฒญ๋ค์ด 5G์ ๊ฐ์ด 100ms ๋ด๋ก ์จ ๊ฒ์ฒ๋ผ ๊ฒฝํํ ์ ์๋ค.


๋ค์์ ๋ญ ๋ค๋ฅด๊ฒ ํ ๊ฒ์ธ๊ฐ
- ์ด๋ฒ ์์ ์ ํต์ฌ์ ๋ ๋๋ง ์ง์ฐ์ ๋คํธ์ํฌ ๋ฌธ์ ๋ก ๋ณด์ง ์์ ๊ฒ์ด๋ค. ๋คํธ์ํฌ ์ํ์ UI ์ํ๋ฅผ ๋ถ๋ฆฌํ์, ํด๊ฒฐ์ฑ ์ด ๋ช ํํด์ก๋ค.
- ํ์ฌ staleTime๊ณผ gcTime์ ๊ฒฝํ์ ์ผ๋ก ๊ฐ๊ฐ 5์ด, 2๋ถ์ผ๋ก ์ค์ ํ๋ค. ๋ฐ์ดํฐ ๋ณ๊ฒฝ ๋น๋์ ์ฌ์ฉ์ ์ฌ๋ฐฉ๋ฌธ ์ฃผ๊ธฐ๋ฅผ ๊ธฐ์ค์ผ๋ก ์ผ์์ผ ํ๋ค๋ ๊ฑด ์์ง๋ง, ์ด๋ฅผ ์ธก์ ํ ์๋จ์ด ์์๋ค. ๋ค์ ํ๋ก์ ํธ์์๋ API ์๋ต ๋ณ๊ฒฝ ๋น๋๋ฅผ ๋จผ์ ํ์ ํ๊ณ staleTime์ ์ค์ ํ๋ ์์๋ก ์ ๊ทผํ ๊ฒ์ด๋ค.
์ ์ฅ์: https://github.com/Sprint-8-2/KNOCK
๋ฐฐํฌ๋งํฌ: https://codeit-knock.netlify.app/
