Single Page Application(SPA)
SPA๋ ์ต์ด ์์ฒญ ์ ์๋ฒ์์ ์ฒซ ํ์ด์ง๋ฅผ ์ฒ๋ฆฌ, ์ดํ ๋ผ์ฐํ ์ ํด๋ผ์ด์ธํธ์์ ์ฒ๋ฆฌํ๋ ์น ์ดํ๋ฆฌ์ผ์ด์ ์ ์๋ฏธํ๋ค.
๋ฐ๋ผ์ ์๋ฒ๋ ๋จ์ผ html, js, css ํ์ผ๋ง ์๋ตํ๋ ๋ฐฉ์
MPA : ์ ํต์ ์ธ ์น ์ดํ๋ฆฌ์ผ์ด์
SPA : ํ์ฌ ๋ง์ด ์ฌ์ฉํ๋ ์ฑ๊ธ ํ์ด์ง ์ดํ๋ฆฌ์ผ์ด์
* ๊ฐ๊ฐ ์ฅ๋จ์ ์ด ์กด์ฌํ๊ธฐ ๋๋ฌธ์ ํผ์ฉํด์ ์ฌ์ฉํ๊ณ ์๋ค.
์ ํต์ ์ธ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋ฒ์์ ํ์ด์ง ๋ณ๋ก ๊ฐ๊ฐ์ html ํ์ผ์ ๊ฐ์ง๊ณ ์์๊ธฐ ๋๋ฌธ์ ํ๋ฉด์ ์ ํํ ๋๋ง๋ค ์๋กญ๊ฒ HTTP ์์ฒญ, ์๋ต์ด ์ํ๋๋ฉด์ ํ๋ฉด ์ ์ฒด๊ฐ ๋ค์ ๋ ๋๋ง๋๊ณ ๊น๋นก์ด๋ ํ์์ด ํ์ฐ์ ์ด๋ค.
SPA์ ์ฅ๋จ์
์ฅ์ :
1. ํ์ด์ง ๋ก๋ฉ์๋๊ฐ ๋น ๋ฅด๋ค.
- ํด๋ผ์ด์ธํธ๊ฐ ์ต์ด ์์ฒญ์ ์๋ฒ๋ก๋ถํฐ ๋ชจ๋ ์ฌ๋ฃ(html, css, js)๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์์ ์์ฒญ์ ๋ํด ํด๋ผ์ด์ธํธ ์ฌ์ด๋์์ ๋๋๋งํ๊ธฐ ๋๋ฌธ์ ์๋ฒ๋ก๋ถํฐ ํ ์ดํฐ๋ฅผ ๋งค๋ฒ ๊ฐ์ ธ์ฌ ํ์๊ฐ ์์ด ํ์ด์ง ์ด๋ ๊ฐ์ ๋๋ ์ด๊ฐ ๊ฑฐ์ ์๋ค.
2. ์ฌ์ฉ์ ๊ฒฝํ์ด ์ฐ์ํ๋ค.
- ๋น ๋ฅธ ๋ก๋ฉ์๋๋ ์ฌ์ฉ์ใ ๊ฒฝํ์ ์ฆ๋์ํค๊ณ , ์ฌ์ฉ์๊ฐ ์น์ฌ์ดํธ์ ๋จธ๋ฌด๋ ๋ฐ ์์ด ๋ก๋ฉ์ผ๋ก ์ธํ ํผ๋ก๋๋ ์ ์ ๊ฒ์ด๋ค.
๋จ์ :
1. ์ต์ด ํ์ด์ง ๋ก๋ฉ์๋๊ฐ ๋๋ฆฌ๋ค.
- ํด๋ผ์ด์ธํธ๊ฐ ์ต์ด๋ก ์๋ฒ์ ์์ฒญํ ๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ๋๋ฌธ์ ์๋์ ์ผ๋ก ์ต์ด ์์ฒญ์์ ์๋๊ฐ MPA์ ๋นํด ์๋์ ์ผ๋ก ๋๋ฆฌ๋ค. ๊ทธ๋ฌ๋ ์ค๋งํธํฐ ์ฑ์ ์๋ํ ๋ ์ต์ด ๋ก๋ฉ์๊ฐ์ ๊ธฐ๊บผ์ด ๊ธฐ๋ค๋ฆฌ๋ ์ฌ์ฉ์๋ผ๋ฉด ์ด๋ ํฐ ๋ฌธ์ ๊ฐ ์ ๋๋ค.
2. SEO์ ์ ํฉํ์ง ์์ ์ ์๋ค.
์๋ฐ์คํฌ๋ฆฝํธ
- SPA๋ ํ๋์ ํ์ด์ง์ ์ฌ๋ฌ ํ์ด์ง๋ฅผ ํด๋ผ์ด์ธํธ ์ฌ์ด๋์์ ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๊ตฌํํ๋ ๋ฐฉ์์ด๊ธฐ ๋๋ฌธ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ํฌ๋กค๋ง ์๋์ด ์์ธ์ด ๋์ง ์๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค. ๊ตฌ๊ธ์ ๊ฒฝ์ฐ ํฌ๋กค๋ง ๊ณผ์ ์์ ๊ตฌ๊ธ๋ด์ด ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ๊ตฌ๋ํ์ฌ ์ฝ์ ์ ์์ง๋ง ์ด ๋ํ ์๋ฒ์ฌ์ด๋์์ ์ ํ ๋ ๋๋ง๋์ง ์์ ์๋ฐ์คํฌ๋ฆฝํธ ๋ฉ์ด๋ฆฌ๋ฅผ ๊ตฌ๊ธ๋ด์ด ๋ ๋๋งํ์ฌ ํฌ๋กค๋งํ๋ ๊ณผ์ ์์ ๋ง์ ์๊ฐ์ด ์์๋๋ค.
ํ๋์ Meta Data
- Meta Date ๋ํ ํ๋์ ํ์ด์ง๋ผ๋ SPA์ ๋ณธ์ง์ ์ธ ํน์ฑ์์ ๋ฐ์ํ๋ ๋ฌธ์ ์ด๋ค. ์ฌ์ดํธ ๋ด์ ๋ค๋ฅธ ํ์ด์ง๋ก ์ด๋ํ๋๋ผ๋ HTML์ ๋ณ๋๋์ง ์๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ํ์ด์ง์ ๋์ผํ ๋ฉํ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ๊ฒ ๋๋ ์ํฉ์ด ๋ฐ์
๊ฒฐ๊ตญ, ํฌ๋กค๋ฌ์๊ฒ๋ ํ๋์ ํ์ด์ง
- ํฌ๋กค๋ฌ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ด๋ฏธ ์๋ ค์ง ํ์ด์ง๋ฅผ ํฌ๋กค๋งํ๋ค. ์ฆ, ํ๋์ ํ์ด์ง์ ๋ค์ด๊ฐ์ ๋ ๋ฐ๊ฒฌ๋๋ URL์ ๋๊ธฐ์ด์ ์ ์ฅํ๊ณ ์ ์ฅ๋ URL์ ๊ธฐ๋ฐ์ผ๋ก ๋ค์ ํฌ๋กค๋งํ๊ณ ๋๊ธฐ์ด์ ์ ์ฅํ๊ณ ๋ฅผ ๋ฐ๋ณตํ์ฌ ํฌ๋กค๋งํ๊ฒ ๋๋ค. ๊ทธ๋ฌ๋ SPA ๋ฐฉ์์ ์น ์ฌ์ดํธ์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ์ดํธ ๋ด์ ํ์ด์ง๋ก ํฅํ๋ href์์ฑ์ html์์ ์ฌ์ฉํ์ง ์๊ณ JS๋ก ํ์ด์ง ์ด๋์ ๊ตฌํํ๊ธฐ ๋๋ฌธ์ ํฌ๋กค๋ฌ๊ฐ ์ฌ์ดํธ์ ์๋ ๋ชจ๋ ํ์ด์ง์ ๋ด์ฉ์ ํฌ๋กค๋งํ์ง ๋ชปํ๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํ ์ ์๋ค.
'๊ฐ๋ฐ ์ง์, ์คํฌ๋ฆฝํธ > React' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Context API (1) | 2023.12.17 |
---|---|
JSX ๋ (0) | 2023.12.09 |
์ปค์คํ Component ๊ตฌํ (1) | 2023.12.08 |
์ปดํฌ๋ํธ ๊ธฐ๋ฐ ํ์ด์ง ๊ธฐํ, ๊ฐ๋ฐ (0) | 2023.12.08 |
React ์ ๊ฐ์ ๋(Virtual DOM) (1) | 2023.12.07 |
๋๊ธ