SPA

Single Page Application

  • SPA๋ž€?

    • ๋ง ๊ทธ๋Œ€๋กœ ๋‹จ์ผํŽ˜์ด์ง€๋กœ ๊ตฌ์„ฑ๋œ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜

      • MPA(Multi Page Application)์˜ ๋ฐ˜๋Œ€

      • ๊ณผ๊ฑฐ ์„œ๋ฒ„๊ฐ€ ์ˆ˜ํ–‰ํ•˜๋˜ ๋ Œ๋”๋ง์„ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ฒ˜๋ฆฌํ•œ๋‹ค.

        ํ™”๋ฉด ๊ตฌ์„ฑ์— ํ•„์š”ํ•œ ๋ชจ๋“  html์„ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ , ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ JSON์˜ ํ˜•ํƒœ๋กœ ๋ฐ›์•„์˜จ๋‹ค.

      • ์ตœ์ดˆ ํŽ˜์ด์ง€ ๋ Œ๋”๋ง ์ดํ›„, ๋ณ€๊ฒฝ๋˜๋Š” ๋ฐ์ดํ„ฐ๋งŒ ์„œ๋ฒ„์—์„œ ๋ฐ›์•„์˜จ๋‹ค.

      • ์ฃผ๋กœ CSR ๋ฐฉ์‹์œผ๋กœ ๋ Œ๋”๋ง ๋œ๋‹ค

  • ์žฅ์ 

    1. ๋›ฐ์–ด๋‚œ UX

    2. ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ์š”์ฒญํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ™”๋ฉด ์ „ํ™˜์‹œ, ๋น ๋ฅธ ๋ Œ๋”๋ง ๊ฐ€๋Šฅ

    3. ์„œ๋ฒ„๊ฐ€ ํ•  ํ™”๋ฉด๊ตฌ์„ฑ์„ ํด๋ผ์ด์–ธํŠธ์—์„œ ์ˆ˜ํ–‰ํ•˜์—ฌ ์„œ๋ฒ„ ๋ถ€๋‹ด ๊ฒฝ๊ฐ

  • ๋‹จ์ 

    1. ์ตœ์ดˆ ๋ชจ๋“  ๋ฆฌ์†Œ์Šค๋ฅผ ๋ฐ›์•„์™€ ๋ Œ๋”๋ง ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ดˆ๊ธฐ ๋ Œ๋”๋ง์ด ๋А๋ฆฌ๋‹ค. 2. ์–ด๋ ค์šด SEO

ํด๋ผ์ด์–ธํŠธ์—์„œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ๋ Œ๋”๋ง ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ฝ์ง€ ๋ชปํ•˜๋Š” ๊ฒ€์ƒ‰์—”์ง„์— ๋Œ€ํ•˜์—ฌ ํฌ๋กค๋ง์ด ์–ด๋ ต๋‹ค.

  • SEO์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ…

    • SSR ์‚ฌ์šฉ (์ถ”ํ›„ ํฌ์ŠคํŒ…์—์„œ ์ž์„ธํžˆ ๋‹ค๋ฃฐ ์˜ˆ์ •)

      SSR : ServerSide Rendering์˜ ์•ฝ์ž๋กœ ์„œ๋ฒ„์—์„œ html, css, js๋“ฑ ๋ชจ๋“  ์š”์†Œ๋ฅผ ๋ฐ›์•„์™€์„œ ๋ Œ๋”๋ง ํ•˜๋Š” ๋ฐฉ์‹

  • SPA ํ”„๋ ˆ์ž„ ์›Œํฌ

  1. React

    • ๊ฐ€์žฅ ๋†’์€ ์ ์œ ์œจ์„ ๊ฐ€์ง„ ํ”„๋ ˆ์ž„์›Œํฌ (๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ)

    • ํฐ ์ƒํƒœ๊ณ„์—์„œ ์˜ค๋Š” ๋‹ค์–‘ํ•œ ๋„๊ตฌ์™€ ๋ ˆํผ๋Ÿฐ์Šค

    • ์†์‰ฌ์šด ์ปดํฌ๋„ŒํŠธ ์žฌ์‚ฌ์šฉ

    • ๋†’์€ ์ž์œ ๋„ (ํ˜‘์—…๊ฐ„์˜ ๊ทœ์•ฝ ํ•„์š”)

  2. Vue

    • ๋ฆฌ์•กํŠธ์— ๋น„ํ•ด ๋‚ฎ์€ ๋Ÿฌ๋‹์ปค๋ธŒ

    • "ํ”„๋ ˆ์ž„์›Œํฌ"์ด๊ธฐ ๋•Œ๋ฌธ์— ํ˜‘์—…์‹œ ์šฉ์ด (๋ฆฌ์•กํŠธ์— ๋น„ํ•ด ๋‚ฎ์€ ์ž์œ ๋„) => ๊ฐœ๋ฐœ ์†๋„ ๋‹จ์ถ•

  3. Angular (์ถ”ํ›„์— ์ง์ ‘ ์‚ฌ์šฉํ•ด ๋ณผ ์˜ˆ์ •)

Last updated