Next.js 13์ผ๋ก ๋ง๋ค์ด๋ณธ ์ ์ ๋ธ๋ก๊ทธ ์ฌ์ดํธ์ ๋๋ค. ์ ์๊ฒ ๋ง๋ ํธ๋ฆฌํ UI์ ๊ธฐ๋ฅ๋ค์ ์ง์ ์ปค์คํ ํด๋ณด์์ต๋๋ค. ์ด์ ์ ์์ฑํ ํฌ์คํธ๋ค์ ํ์ฌ ๋ง๋ ๋ธ๋ก๊ทธ๋ก ์ฎ๊ธฐ๊ณ , ์์ผ๋ก ์ข์ ํฌ์คํธ๋ค์ ์ถ๊ฐํ ์์ ์ ๋๋ค.
์ฒ์์ ์ ์ ์ฌ์ดํธ๋ฅผ ๋ง๋ค๊ธฐ ์ํด Gatsby์ Next.js ๋ ์ฌ์ด์์ ๊ณ ๋ฏผ์ ํ๋ค๊ฐ, Next.js๋ฅผ ์ ํํ์ต๋๋ค. ์ด์ ์ ์ฌ๋ฌ๋ฒ ์จ๋ณธ Next.js๋ฅผ ์ ํํ ์ด์ ๋ 13 ๋ฒ์ ์ ์ฌ์ฉํด๋ณด๊ณ ์ถ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ง์ฝ 13 ๋ฒ์ ์ด ์๋์๋ค๋ฉด Gatsby๋ฅผ ์ ํํ์ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์จ๋ณธ ํ๊ธฐ๋ ๋ ๋ณต์กํด์ก์ง๋ง ๋ ๋ง์กฑ์ค๋ฌ์์ก๋ค๋ ๊ฒ์ ๋๋ค. ๋ ์์ธํ ๋ด์ฉ์ ์๋ ํ๋ก์ ํธ ํ๊ธฐ์์ ํ์ธํ ์ ์์ต๋๋ค.
| ๊ธฐ๋ฅ | ์ค๋ช |
|---|---|
| ๋คํฌ๋ชจ๋ | ์์คํ ๊ธฐ๋ณธ ์ค์ ์ ๋ํดํธ๋ก ๋คํฌ๋ชจ๋ ๋ฒํผ ์ง์ |
| ์นดํ ๊ณ ๋ฆฌ๋ณ ํฌ์คํธ | ์นดํ ๊ณ ๋ฆฌ ํญ๋ชฉ๋ณ๋ก ํฌ์คํธ ๋ถ๋ฅํ๊ธฐ |
| ์ ๋ณ ํฌ์คํธ | ๋ชจ๋ ํฌ์คํธ ์ค ๋ณด์ฌ์ฃผ๊ณ ์ถ์ ํฌ์คํธ๋ฅผ ์ ๋ณํ์ฌ ๋ฆฌ์คํธ๋ก ๋ณด์ฌ์ฃผ๊ธฐ |
| ์ด์ ๊ณผ ๋ค์ ํฌ์คํธ | ํฌ์คํธ๋ฅผ ๋ณด์ฌ์ฃผ๋ ํ์ด์ง์์ ํ๋จ์ ์ด์ ๊ณผ ๋ค์ ํฌ์คํธ ๋ณด์ฌ์ฃผ๊ธฐ |
| ๋ชฉ์ฐจ | ํฌ์คํธ์ ๋ชฉ์ฐจ |
| ํ์ฌ ์คํฌ๋กค ์์น | ํ์ฌ ๋์ ์คํฌ๋กค ์์น๋ฅผ ํผ์ผํ ์ด์ง๋ก ๊ฐ๋ก ์งํ๋ฐ์์ ๋ณด์ฌ์ฃผ๊ธฐ |
| ๋๊ธ | Giscus๋ฅผ ์ด์ฉํ์ฌ ๋๊ธ ๊ธฐ๋ฅ ๊ตฌํ |
| PWA | ์น์ฑ ์ค์ |
์ผ๋จ ๋จผ์ ์ ๋ง์ ๋ธ๋ก๊ทธ๋ฅผ ๋ง๋ค์๋ค๋ ์ ์์ ๊ต์ฅํ ๋ฟ๋ฏํฉ๋๋ค. ์์ผ๋ก ์ ์๊ฒ ๋์ฑ ๋์์ด ๋๋ ๋ธ๋ก๊ทธ๋ก ๋ง๋ค์ด๋ณด๊ณ ์ ํฉ๋๋ค ๐ ๋ธ๋ก๊ทธ๋ฅผ ๋ง๋ค๋ฉด์ ๊ฐ์ฅ ์ ๊ฒฝ์ผ๋ ๊ฑด ๊ธ์ ์ฝ๋ ๋ ์๊ฐ ๊ธ์ ์ฝ์ผ๋ฉฐ ๋์ ์ฌ์ฉ์ ๊ฒฝํ์ ์ป์ ์ ์๋๋ก ์ ๊ฒฝ์ผ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ฌผ๋ก ์ ๊ฐ ์ ์ ๊ณต๋ถ๋ฅผ ์ํด ๊ธ์ ์ฐ๋ ๊ณต๊ฐ์ด์ง๋ง ๊ทธ ๊ธ์ ๋ณด๋ ๋ ์๋ ํธํ๊ฒ ๊ธ์ ๋ณผ ์ ์๋ ๊ณต๊ฐ์ด์์ผ๋ฉด ํ์ต๋๋ค.
์ด๋ฅผ ์ํด์
- ํ์ฌ ๋์ ์คํฌ๋กค ์์น๊ฐ ์ด๋์ธ์ง ๊ฐ๋ก ์งํ๋ฐ ํผ์ผํ ์ด์ง๋ก ๋ณด์ฌ์ฃผ๋ ๊ธฐ๋ฅ
- ๋ชฉ์ฐจ๋ฅผ ๋ง๋ค์ด ํด๋น ๋ชฉ์ฐจ๋ก ๋ฐ๋ก ์ด๋ํ ์ ์๋ ๊ธฐ๋ฅ
- ํด๋น ๋ฌธ์๋ฅผ ์ฝ๋ ๋ฐ ๋ช๋ถ ๊ฑธ๋ฆฌ๋์ง ์๋ ค์ฃผ๋ ๊ธฐ๋ฅ
- PWA๋ก ๋ง๋ค์ด ๋ชจ๋ฐ์ผ์์ ์น์ฑ์ผ๋ก ๋ ํธํ๊ฒ ๋ณผ ์ ์๋ ๊ธฐ๋ฅ
์ ๊ตฌํํด ์ฌ์ฉ์ ๊ฒฝํ์ ๋์์ต๋๋ค!
๊ทธ ๊ฒฐ๊ณผ๋ก 100%๋ ์๋์ด๋ ๊ฝค ๋ง์์ ๋๋ ๊ฒฐ๊ณผ๋ฌผ์ด ๋์์ต๋๋ค. ์์ผ๋ก๋ ์ฑ์ฅ์ ์ํด ์ข์ ๊ธ๋ค์ ๋ง์ด ์ฌ๋ฆด ์์ ์ ๋๋ค!๐
์ฒ์ ์ฌ์ฉํด๋ณธ Next.js 13 ๋ฒ์ ๊ฐ์ธ์ ์ธ ํ๊ธฐ
์๋ก ๋์จ Next.js 13 ๋ฒ์ ์ ์ฌ์ฉํด๋ดค๋๋ฐ์. React Server Component์ ๋์ ์ดํ ์์ผ๋ก์ Next.js์ ๋ฐฉํฅ์ฑ์ ์ ์ ์์์ต๋๋ค. 13 ๋ฒ์ ์์๋ ํ ํ์ด์ง ๋ด์์ ์๋ฒ ์ปดํฌ๋ํธ์ ํด๋ผ์ด์ธํธ ์ปดํฌ๋ํธ๋ฅผ ๋ถ๋ฆฌํ์ฌ ๋ ๋ณต์กํด์ก์ง๋ง ์๋์ ๊ฐ์ ์ด์ ๋ก ๋ ํธ๋ฆฌํ๊ธฐ๋ ํ์ต๋๋ค.
- ๋จผ์ ํด๋ผ์ด์ธํธ์์ API ์์ฒญ์ ํ์ง ์์๋ ๋๋ค๋ ์ ์ ๋๋ค. ํด๋ผ์ด์ธํธ์์ ์์ฒญํ ํ์๊ฐ ์์ผ๋ ์ฝ๋๊ฐ ๋ ์ ์ด์ก์ง๋ง ์๋ฒ์์ ๋ชจ๋ ์ํ๋์ด ๊ฐ์ ํ๋ฉด์ ๋ณด์ฌ์ค ์ ์์์ต๋๋ค.
- ์คํ๋ ค ์ปดํฌ๋ํธ๋ฅผ ๋๋๊ธฐ ๋ ์ฝ๊ธฐ๋ ํ์ต๋๋ค. ํ์ด์ง์ ์ด๋ค ๋ถ๋ถ์ ์๋ฒ ์ปดํฌ๋ํธ๋ก ๋ง๋ค๊ฒ์ธ์ง, ์ด๋ค ๋ถ๋ถ์ ๊ผญ ํด๋ผ์ด์ธํธ ์ปดํฌ๋ํธ๋ก ๋ง๋ค์ด์ผ ํ๋์ง๋ก ์๊ฐํ๋ค๋ณด๋ ์คํ๋ ค ๋ ์ปดํฌ๋ํธ๋ฅผ ์ฝ๊ฒ ๋๋ ์ ์์๋ ๊ฒ ๊ฐ์ต๋๋ค.
- ์๋ React.lazy ์ ์ฉ ์๋ฒ ์ปดํฌ๋ํธ์ import๋ ํด๋ผ์ด์ธํธ ์ปดํฌ๋ํธ๋ ๋ชจ๋ Code splitting ๋์ด ์๋์ผ๋ก React.lazy์ด ์ ์ฉ๋์ด ์์ฑํ์ง ์์๋ ๋์ด์ ๊ต์ฅํ ํธํ์ต๋๋ค.
์์ง 13.2.4 ๋ฒ์ ์์ appํด๋ ๋ด์์์ 404.js ํ์ผ์ด ์ง์๋์ง ์๊ณ , ์๋ฒ ์ปดํฌ๋ํธ์ async ์ ์ฉ๊ณผ ํ์ ์คํฌ๋ฆฝํธ ๊ฐ์ ์ถฉ๋์ด ์๋ ๋ฑ ์์ ๋์ง ์๋ ๋ถ๋ถ๋ค์ด ์์ง๋ง ๊ต์ฅํ ๋ง์กฑ์ค๋ฝ์ต๋๋ค!


