alswlfl 2022. 12. 30. 18:13

1. MPA(Multiple Page Application)

  • ์—ฌ๋Ÿฌ ๊ฐœ์˜ Page๋กœ ๊ตฌ์„ฑ๋œ Application
  • SSR(Server Side Rendering)๋ฐฉ์‹์œผ๋กœ ๋ Œ๋”๋ง
  • ์ƒˆ๋กœ์šด ํŽ˜์ด์ง€๋ฅผ ์š”์ฒญํ•  ๋•Œ๋งˆ๋‹ค ์„œ๋ฒ„์—์„œ ๋ Œ๋”๋ง๋œ ์ •์  ๋ฆฌ์†Œ์Šค(HTML, CSS, JavaScript)๊ฐ€ ๋‹ค์šด๋กœ๋“œ ๋˜๊ณ , ํŽ˜์ด์ง€ ์ด๋™ํ•˜๊ฑฐ๋‚˜ ์ƒˆ๋กœ๊ณ ์นจํ•˜๋ฉด ์ „์ฒด ํŽ˜์ด์ง€๋ฅผ ๋‹ค์‹œ ๋ Œ๋”๋ง

MPA

[์žฅ์ ]

  • SEO(๊ฒ€์ƒ‰ ์—”์ง„)๊ด€์ ์—์„œ ์œ ๋ฆฌ → ์™„์„ฑ๋œ ํ˜•ํƒœ์˜ HTML ํŒŒ์ผ์„ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์ „๋‹ฌ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์—
  • ์ฒซ ๋กœ๋”ฉ ๋งค์šฐ ์งง์Œ → ์„œ๋ฒ„์—์„œ ์ด๋ฏธ ๋ Œ๋”๋งํ•ด ๊ฐ€์ ธ์˜ค๊ธฐ ๋•Œ๋ฌธ์—

[๋‹จ์ ]

  • ๋งค ํŽ˜์ด์ง€ ์š”์ฒญ๋งˆ๋‹ค ๋ฆฌ๋กœ๋”ฉ ๋ฐœ์ƒํ•˜์—ฌ UX๊ฐ€ ์ข‹์ง€ ์•Š์Œ
  • ํŽ˜์ด์ง€ ์ด๋™์‹œ ์ „์ฒด ํŽ˜์ด์ง€๋ฅผ ๋‹ค์‹œ ๋ Œ๋”๋งํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ถˆํ•„์š”ํ•œ ํ…œํ”Œ๋ฆฟ๋„ ์ค‘๋ณตํ•ด์„œ ๋กœ๋”ฉํ•˜์—ฌ ์„ฑ๋Šฅ์ด ์ข‹์ง€ ์•Š์Œ
  • ์„œ๋ฒ„ ๋ Œ๋”๋ง์— ๋”ฐ๋ฅธ ๋ถ€ํ•˜ ๋ฐœ์ƒ
  • ๋ชจ๋ฐ”์ผ ์•ฑ ๊ฐœ๋ฐœ ์‹œ ์ถ”๊ฐ€์ ์ธ ๋ฐฑ์—”๋“œ ์ž‘์—…์ด ํ•„์š”ํ•˜์—ฌ ๊ฐœ๋ฐœ์ด ๋ณต์žกํ•ด์งˆ ์ˆ˜ ์žˆ์Œ

2. SPA(Single Page Application)

  • ํ•œ ๊ฐœ์˜ Page๋กœ ๊ตฌ์„ฑ๋œ Application
  • CSR(Client Side Rendering)๋ฐฉ์‹์œผ๋กœ ๋ Œ๋”๋ง
  • ์ฒ˜์Œ ํ•œ ๋ฒˆ๋งŒ ๋ฆฌ์†Œ์Šค(HTML, CSS, JavaScript)๋ฅผ ๋กœ๋”ฉํ•˜๊ณ , ๊ทธ ํ›„์—๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•„์˜ฌ ๋•Œ๋งŒ ์„œ๋ฒ„์™€ ํ†ต์‹ 
  • ์ฒซ ์š”์ฒญ์‹œ ๋”ฑ ํ•œํŽ˜์ด์ง€๋งŒ ๋ถˆ๋Ÿฌ์˜ค๊ณ  ํŽ˜์ด์ง€ ์ด๋™ ์‹œ ๊ธฐ์กด ํŽ˜์ด์ง€์˜ ๋‚ด๋ถ€๋ฅผ ์ˆ˜์ •ํ•˜์—ฌ ๋ณด์—ฌ์ฃผ๋Š” ๋ฐฉ์‹
  • ์ตœ์ดˆ ํŽ˜์ด์ง€๋ฅผ ๋กœ๋”ฉํ•œ ์‹œ์ ๋ถ€ํ„ฐ๋Š” ํŽ˜์ด์ง€ ๋ฆฌ๋กœ๋”ฉ ์—†์ด ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ์„œ๋ฒ„๋กœ ๋ถ€ํ„ฐ ๋ฐ›์•„์„œ ํ™”๋ฉด์„ ๊ฐฑ์‹ 
  • ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ๊ฐฑ์‹ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ž์—ฐ์Šค๋Ÿฌ์šด ํŽ˜์ด์ง€ ์ด๋™๊ณผ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜(UX)์„ ์ œ๊ณต

SPA

[์žฅ์ ]

  • ์ „์ฒด ํŽ˜์ด์ง€๋ฅผ ์—…๋ฐ์ดํŠธ ํ•  ํ•„์š”๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋น ๋ฅด๊ณ  '๊นœ๋นก'๊ฑฐ๋ฆผ์ด ์—†์Œ(UX๊ฐ€ ์ข‹์Œ)
  • ์„œ๋ฒ„์—๊ฒŒ ์ •์  ๋ฆฌ์†Œ์Šค๋ฅผ ํ•œ ๋ฒˆ๋งŒ ์š”์ฒญํ•˜๊ณ , ๋ฐ›์€ ๋ฐ์ดํ„ฐ๋Š” ์ „๋ถ€ ์ €์žฅํ•ด ๋†“๊ธฐ ๋•Œ๋ฌธ์—, ํ•„์š”ํ•œ ๋ฆฌ์†Œ์Šค๋งŒ ๋ถ€๋ถ„์ ์œผ๋กœ ๋กœ๋”ฉํ•จ
  • ์„œ๋ฒ„์˜ ํ…œํ”Œ๋ฆฟ ์—ฐ์‚ฐ์„ ํด๋ผ์ด์–ธํŠธ๋กœ ๋ถ„์‚ฐํ•˜์—ฌ ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ
  • ์ปดํฌ๋„ŒํŠธ ๋ณ„๋กœ ๊ฐœ๋ฐœ์ด ์šฉ์ดํ•˜์—ฌ ์ƒ์‚ฐ์„ฑ์ด ์ข‹์Œ
  • ๋ชจ๋ฐ”์ผ ์•ฑ ๊ฐœ๋ฐœ์„ ์—ผ๋‘์— ๋‘”๋‹ค๋ฉด ๋™์ผํ•œ API๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค๊ณ„ ๊ฐ€๋Šฅ

[๋‹จ์ ]

  • JavaScriptํŒŒ์ผ์„ ๋ฒˆ๋“ค๋งํ•˜์—ฌ ํ•œ ๋ฒˆ์— ๋ฐ›์œผ๋ฏ€๋กœ ์ดˆ๊ธฐ ๊ตฌ๋™ ์†๋„๊ฐ€ ๋А๋ฆผ → Webpack code splitting์œผ๋กœ ํ•ด๊ฒฐ ๊ฐ€๋Šฅ
  • SEO ์–ด๋ ค์›€
  • ๋ณด์•ˆ ๋ฌธ์ œ

 

[์ฐธ๊ณ ]

https://velog.io/@gwanuuoo/SPA%EB%8A%94-%EA%B8%B0%EC%A1%B4-%EC%9B%B9%EC%82%AC%EC%9D%B4%ED%8A%B8%EC%99%80-%EC%B0%A8%EC%9D%B4

 

SPA์™€ ๊ธฐ์กด ์›น์‚ฌ์ดํŠธ์˜ ์ฐจ์ด

SPA(Single Page Application)๋Š” ๋ชจ๋˜ ์›น์˜ ํŒจ๋Ÿฌ๋‹ค์ž„์ด๋‹ค. SPA๋Š” ๋‹จ์ผ ํŽ˜์ด์ง€๋กœ ๊ธฐ์กด์˜ ์„œ๋ฒ„ ์‚ฌ์ด๋“œ ๋ Œ๋”๋ง๊ณผ ๋น„๊ตํ•  ๋•Œ, ๋ฐฐํฌ๊ฐ€ ๊ฐ„๋‹จํ•˜๋ฉฐ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ๊ณผ ๋น„์Šทํ•œ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์ œ๊ณตํ•œ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.SP

velog.io