SPA ๋ฑ์ฅ๋ฐฐ๊ฒฝ
์ ํต์ ์ธ ์น์ฌ์ดํธ => ์ฌ์ฉ์๊ฐ ์น์ฌ์ดํธ ๋ด์ ๋ค๋ฅธ ํ์ด์ง๋ก ์ด๋ํ๋ฉด, ๋ธ๋ผ์ฐ์ ๊ฐ ํ์ด์ง๋ฅผ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด ๋งค๋ฒ HTML ํ์ผ๋ก ๋ "ํ์ด์ง ์ ์ฒด"๋ฅผ ๋ถ๋ฌ์๋ค.
์๊ฐ์ด ์ง๋๋ฉด์ ์น์ฌ์ดํธ๊ฐ ๋ณด๋ค ๋ณต์กํด์ง๊ณ ์ ํ๋ฆฌ์ผ์ด์ ์ ํํ๋ฅผ ๊ฐ์ง๊ฒ ๋๋ฉด์, ์ฌ์ฉ์์ ์๋น์ค ์ฌ์ด์ ๋์ฑ ๋ง์ ์ํธ์์ฉ์ด ์ผ์ด๋๊ฒ ๋์๋ค. ํ์ง๋ง ์ด๋๋ง๋ค ์ค๋ณต๋๋ ์์๋ค์ ๋งค๋ฒ ๋ถ๋ฌ์ค๋ ๊ฒ์ด ์๋ฒ์์ ๋ถํ์ํ ํธ๋ํฝ์ ๋ฐ์์์ผฐ๊ณ , ๋งค๋ฒ ๋ชจ๋ ํ์ด์ง๋ฅผ ๋ถ๋ฌ์ด์ ๋ฐ๋ผ ๋ ๋๋ฆฐ ๋ฐ์์ฑ์ ๊ฐ๊ฒ ๋์๋ค.
์ด์ ๋ํ ๊ณ ๋ฏผ์ ํด๊ฒฐํ๊ธฐ ์ํด ๋์จ ๊ฒ์ด ๋ฐ๋ก SPA!!!
1990๋ ๋ ํ๋ฐ์ HTML ๋ฌธ์ ์ ์ฒด๊ฐ ์๋, ์ ๋ฐ์ดํธ์ ํ์ํ ๋ฐ์ดํฐ๋ง ์๋ฒ์์ ์ ๋ฌ๋ฐ์ ์ด ๋ฐ์ดํฐ๋ฅผ JavaScript๊ฐ ๋์ ์ผ๋ก HTML ์์๋ฅผ ์์ฑํด์ ํ๋ฉด์ ๋ณด์ฌ์ฃผ๋ ๋ฐฉ์์ด ๊ฐ๋ฐ๋์ด ์ฌ์ฉ๋๊ธฐ ์์ํ์๋ค.
SPA(Single Page Application) ๊ฐ๋
์๋ฒ๋ก๋ถํฐ ์์ ํ ์๋ก์ด ํ์ด์ง๋ฅผ ๋ถ๋ฌ์ค์ง ์๊ณ ํ์ด์ง ๊ฐฑ์ ์ ํ์ํ ๋ฐ์ดํฐ๋ง ๋ฐ์ ๊ทธ ์ ๋ณด๋ฅผ ๊ธฐ์ค์ผ๋ก ํ์ฌ์ ํ์ด์ง๋ฅผ ์ ๋ฐ์ดํธํจ์ผ๋ก์จ ์ฌ์ฉ์์ ์ํตํ๋ ์น ์ดํ๋ฆฌ์ผ์ด์ ์ด๋ ์น ์ฌ์ดํธ
SPA ์ฅ์
1. ๋น ๋ฅด๋ค!! ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ์ฌ์ฉ์ ์ฌ์ด์ ์์๋ก ์ํธ์์ฉ์ด ๋ฐ์ํ๋๋ฐ, ํ์ด์ง ์ ์ฒด๋ฅผ ๋ ๋๋ง ํ๋ ๊ฒ์ด ์๋๋ผ ํ์ํ ๋ถ๋ถ๋ง ์ ๋ฐ์ดํธํ๊ธฐ ๋๋ฌธ์ SPA๋ ์ฌ์ฉ์์ ํ๋์ ๋น ๋ฅด๊ฒ ๋ฐ์ํ๋ค.
2. ์๋ฒ ๊ณผ๋ถํ ๊ฐ์!! ์๋ฒ ์ ์ฅ์์๋ ์์ฒญ๋ฐ์ ๋ฐ์ดํฐ๋ง ๋๊ฒจ์ฃผ๋ฉด ๋๊ธฐ ๋๋ฌธ์ ๊ณผ๊ฑฐ์ ๊ฐ์ ๊ณผ๋ถํ ๋ฌธ์ ๋ ์ค์ผ ์ ์๋ค.
3. ํฅ์๋ ์ฌ์ฉ์ ๊ฒฝํ ์ ๊ณต!! ํ๋ฉด ์ ์ฒด๋ฅผ ์๋ก ๋ ๋๋งํ ํ์๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋ณด๋ค ๋์ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํ๋ค.
SPA ๋ํ์ ์ธ ์๋น์ค
Youtube, facebook, Gmail, airbnb, Netflix
SPA ๋จ์
1. ์ฒซ ํ๋ฉด ๋ก๋ฉ ์๊ฐ์ด ๊ธธ์ด์ง๋ค. (JS ํ์ผ์ ํฌ๊ธฐ๊ฐ ์ปค์ JS ํ์ผ์ ๊ธฐ๋ค๋ฆฌ๋ ์๊ฐ์ผ๋ก ์ธํด)
why?๐ค
๋ธ๋ผ์ฐ์ ๋ ์ฒซ ํ๋ฉด ๋ก๋ฉ์, HTMLํ์ผ์ ์ฝ์ด๋ค์ธ ํ, ๊ทธ ์์ script ์์ ์๋ JS ํ์ผ์ ๋ค์ ๋ฐ์์ค๋ ๊ณผ์ ์ ๊ฑฐ์น๋ค.
์ด๋, ์ฒซ ํ๋ฉด ๋ก๋ฉ ์ ์ฝ์ด๋ค์ธ HTML ํ์ผ์ ๊ฑฐ์ ๋น์ด์๊ณ , ๋๋ถ๋ถ์ ์ฝ๋๋ JS ํ์ผ ์์ ๋ค์ด์๋ค๋ณด๋ JS ํ์ผ์ด ๋ฌด๊ฑฐ์์ง๋ค.
2. ๊ฒ์ ์์ง ์ต์ ํ(SEO)๊ฐ ์ข์ง ์๋ค.
why?๐ค
๊ตฌ๊ธ์ด๋ ๋ค์ด๋ฒ ๊ฐ์ ๊ฒ์ ์์ง์ HTML ํ์ผ์ ์๋ ์๋ฃ๋ฅผ ๋ถ์ํ๋ ๋ฐฉ์์ผ๋ก ๊ฒ์ ๊ธฐ๋ฅ์ ๊ตฌ๋ํ๋ค.
ํ์ง๋ง SPA์ ๊ฒฝ์ฐ HTML ํ์ผ์ ๋ณ๋ค๋ฅธ ์๋ฃ๊ฐ ์๊ธฐ ๋๋ฌธ์ ๊ฒ์ ์์ง์ด ์ ์ ํ ๋์ํ์ง ๋ชปํ๋ค.
์ฆ, SPA๋ HTML์ด ๊ฑฐ์ ๋น์ด์๋ค ๋ณด๋ ๊ฒ์ ๋ก๋ด์ด ์ถฉ๋ถํ ์๋ฃ๋ฅผ ์์งํ์ง ๋ชปํ๋ค.
๊ทธ๋์ ๊ฒ์ ๋ ธ์ถ์ด ์ค์ํ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฒ์ ์์ง ์ต์ ํ์ ๋ํ ๋์์ฑ ์ ๋ฐ๋ก ๋ง๋ จํด์ผ ํ๊ณ , ๋๋ถ์ด ์ฑ ์์์ ๋ธ๋ผ์ฐ์ ์ ์ํ ๊ด๋ฆฌ๋ ํด์ผ ํ๊ธฐ ๋๋ฌธ์ ๊ฐ๋ฐ์ ๋ณต์ก๋๊ฐ ๋์ฑ ๋์ด๋๋ค.
ํ์ง๋ง SPA์์๋ ๊ฒ์ ์์ง ์ต์ ํ์ ๋์ํ ์ ์๋๋ก ๊ฒ์ ์์ง์ด ๋ฐ์ ํ๊ณ ์์ด์, ์ ์ฐจ ์ด ๋จ์ ์ ์ฌ๋ผ์ง๊ณ ์๋ ์ถ์ธ๋ผ๊ณ ํ๋ค.
tip, ๊ฒ์ ์์ง์ ์๋ ๋ฐฉ์
๊ฒ์ ๋ก๋ด์ด ์น ํ์ด์ง์ ์๋ ์ ๋ณด๋ฅผ ์์งํ๊ณ ๋ถ์ํด์ ๊ทธ ๊ฒฐ๊ณผ๊ฐ์ ์ธ๋ฑ์ค๋ฅผ ๋ง๋ค์ด ๋ณด๊ดํ๊ณ ์๋ค๊ฐ ์ฌ์ฉ์๊ฐ ๊ฒ์์ด๋ฅผ ์ ๋ ฅํ๋ฉด, ๋ณด๊ดํ๊ณ ์๋ ์ธ๋ฑ์ค์์ ๊ฒ์์ด์ ๊ฐ์ฅ ์ฐ๊ด์ฑ์ด ๋์ ์น ํ์ด์ง๋ค์ ์์๋๋ก ๋ณด์ฌ์ฃผ๋ ๋ฐฉ์์ผ๋ก ์๋ํ๋ค.