๊ธ€ ์ž‘์„ฑ์ž: ๋˜ฅํด๋ฒ .
๋ฐ˜์‘ํ˜•

์„œ๋ก 

 ์ „ํ†ต์ ์ธ Web Application์˜ Page life cycle์€ MPA(Multi Page Application)์˜€๋‹ค.

์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ํŠน์ • ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ์š”์ฒญ์„ ์„œ๋ฒ„๋กœ ๋ณด๋‚ด๋ฉด, ์„œ๋ฒ„๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์›น ๋ธŒ๋ผ์šฐ์ €์— ์‘๋‹ตํ•œ๋‹ค.

์ด๋•Œ ํŽ˜์ด์ง€๋ฅผ ์ด๋™ํ•  ๋•Œ๋งˆ๋‹ค ์ „์ฒด ํŽ˜์ด์ง€๊ฐ€ ๋‹ค์‹œ ๋ถˆ๋Ÿฌ์™€์ง€๋ฉด์„œ ํ™”๋ฉด์ด ๊นœ๋นก๊ฑฐ๋ฆฌ๊ฒŒ ๋˜๋Š”๋ฐ,

์‚ฌ์šฉ์ž ์ž…์žฅ์—์„œ๋Š” ๋‹ต๋‹ตํ•œ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•  ์ˆ˜ ๋„ ์žˆ๋‹ค.

(๋ฐ์ดํ„ฐ๊ฐ€ ๋งŽ์„ ๊ฒฝ์šฐ ํŽ˜์ด์ง€๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋™์•ˆ ํฐ ํ™”๋ฉด์„ ๋ณด๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค๋˜๊ฐ€.. ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋ถ€๋ถ„์—์„œ)

 

 ๊ทธ๋ž˜์„œ ์š”์ฆ˜์€ SPA(Single Page Application) ๋ฐฉ์‹์œผ๋กœ ๊ฐœ๋ฐœ๋œ Web Application์„ ์‹ฌ์‹ฌ์น˜ ์•Š๊ฒŒ ๋ณผ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค.

๋‹ค๋ฅธ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜์ง€ ์•Š๋”๋ผ๋„ ํ•˜๋‚˜์˜ ํŽ˜์ด์ง€์—์„œ ์„œ๋ฒ„์™€ ํ†ต์‹ ์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž์—๊ฒŒ ์ข€ ๋” ๊น”๋”ํ•œ(?) ๊ฒฝํ—˜์„ ์ œ๊ณตํ•œ๋‹ค.

๋ฌผ๋ก  ์ด ๋ฐฉ์‹์—๋„ ๋‹จ์ ์€ ์žˆ๋‹ค. ํ•˜๋‚˜ํ•˜๋‚˜ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž.

 


 

SPA(Single Page Application)

 ํ•œ ๊ฐœ์˜ ํŽ˜์ด์ง€(Single Page)๋กœ ๊ตฌ์„ฑ๋œ Application.

ํŽ˜์ด์ง€๋ฅผ ์ตœ์ดˆ์— ํ•œ ๋ฒˆ๋งŒ ๋กœ๋“œํ•˜๊ณ , ๊ทธ ์ดํ›„๋ถ€ํ„ฐ ๋ณ€ํ™”๊ฐ€ ์ƒ๊ธฐ๋Š” ๋ถ€๋ถ„์—์„œ๋งŒ AJAX๋กœ ์ฒ˜๋ฆฌ ํ•œ๋‹ค.

AJAX๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด Web Application ํŽ˜์ด์ง€์˜ ์ผ๋ถ€๋งŒ ์ƒˆ๋กœ ๊ณ ์น  ์ˆ˜ ์žˆ๋‹ค.

 

 

์žฅ์ 

๋น ๋ฅด๊ณ  ๋ถ€๋“œ๋Ÿฌ์šด UX

 ํŽ˜์ด์ง€๋ฅผ ์ฒ˜์Œ์—๋งŒ ๋กœ๋“œํ•˜๊ณ  ๊ทธ ์ดํ›„ ์„œ๋ฒ„์™€ ํ†ต์‹ ์„ ํ†ตํ•ด ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋งŒ ์ฃผ๊ณ ๋ฐ›๋Š”๋‹ค.

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด, ์„œ๋ฒ„ - ํด๋ผ์ด์–ธํŠธ ํŠธ๋ž˜ํ”ฝ์ด ์ค„์–ด๋“ ๋‹ค. Application์ด ๋น ๋ฅด๋‹ค๊ณ  ๋Š๊ปด์ง„๋‹ค.

์‚ฌ์šฉ์ž ์ž…์žฅ์—์„œ๋Š” ํŽ˜์ด์ง€๋ฅผ ์ง€์†์ ์œผ๋กœ ์ƒˆ๋กœ๊ณ ์นจ ํ•  ํ•„์š” ์—†์ด Application์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ,

๊น”๋”ํ•˜๊ณ  ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ๋Š๊ปด์ง„๋‹ค.

 

๋กœ์ปฌ ์บ์‹ฑ ๋ฐ ์˜คํ”„๋ผ์ธ ๊ธฐ๋Šฅ

 ์ดˆ๊ธฐ ์š”์ฒญ ์ดํ›„ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ๋ฐ›์€ ํŽ˜์ด์ง€ ๋ฐ์ดํ„ฐ๋ฅผ ๋กœ์ปฌ์— ์บ์‹ฑํ•œ๋‹ค.

ํŽ˜์ด์ง€๋ฅผ ์ตœ์ดˆ์— ํ•œ ๋ฒˆ๋งŒ ๋กœ๋“œํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ์ด ๋Š๊ฒจ๋„ Application์ด ๊ณ„์† ๋™์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ดํ›„ ๋„คํŠธ์›Œํฌ์— ์žฌ์—ฐ๊ฒฐ์ด ๋œ๋‹ค๋ฉด ๋กœ์ปฌ ๋ฐ์ดํ„ฐ์™€ ์„œ๋ฒ„ ๋ฐ์ดํ„ฐ๋ฅผ ๋™๊ธฐํ™”ํ•˜์—ฌ ๊ธฐ๋Šฅ์„ ๋ณต์›ํ•œ๋‹ค.

 

๋ฐฑ์—”๋“œ / ํ”„๋ก ํŠธ์—”๋“œ ๋ถ„๋ฆฌ

 SPA์—์„œ UI๋Š” ๋ฐ์ดํ„ฐ์™€ ๋ถ„๋ฆฌ๋œ๋‹ค. 

์ด๋ฅผ ํ†ตํ•ด ๋ฐฑ์—”๋“œ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๊ณ  ์›ํ•˜๋Š” ๋งŒํผ ํ”„๋ก ํŠธ์—”๋“œ๋ฅผ ๊ฐœํŽธํ•˜๊ณ  UI๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค.

(์ผ๋ถ€ ์ •์  ๋ฆฌ์†Œ์Šค ํŒŒ์ผ ์ œ์™ธ)

 

 

๋‹จ์ 

SEO ๋ฌธ์ œ

 ์˜ค๋žซ๋™์•ˆ Google ๋ฐ ๊ธฐํƒ€ ๊ฒ€์ƒ‰ ์—”์ง„์€ SPA ์ธ๋ฑ์‹ฑ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค.

๋ด‡์ด ์ •์  HTML ํŽ˜์ด์ง€๋ฅผ ํฌ๋กค๋งํ•˜๋Š” ๋ฐ ๋Šฅ์ˆ™ํ–ˆ์ง€๋งŒ ๋™์  ์ฝ˜ํ…์ธ ๋ฅผ ๋ Œ๋”๋ง ํ•˜๋Š” ๋ฐ๋Š” ์ ํ•ฉํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

์ด ๋ฌธ์ œ๋Š” SSR์„ ์‚ฌ์šฉํ•˜๋ฉด ์–ด๋Š ์ •๋„ ํ•ด๊ฒฐ์ด ๋œ๋‹ค.

 

๋Š๋ฆฐ ์ดˆ๊ธฐ ๋กœ๋”ฉ

 SPA๋Š” ๊ธฐ์กด Application๋ณด๋‹ค ๋Š๋ฆฌ๊ฒŒ ์‹œ์ž‘๋œ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ฒซ ๋ฒˆ์งธ ๋ Œ๋”๋ง ํ›„ SPA๋Š” MPA๋ณด๋‹ค ํ›จ์”ฌ ๋นจ๋ผ์ง„๋‹ค.


 

MPA(Multi Page Application)

 ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํŽ˜์ด์ง€(Multi Page)๋กœ ๊ตฌ์„ฑ๋œ Application.

์ง€๊ธˆ ํฌ์ŠคํŒ…์„ ํ•˜๊ณ  ์žˆ๋Š” ํ‹ฐ์Šคํ† ๋ฆฌ ๊ฒŒ์‹œ๊ธ€๋„ ์ด๋™ํ•  ๋•Œ๋งˆ๋‹ค ํŽ˜์ด์ง€๋ฅผ ์ƒˆ๋กœ๊ณ ์นจ ํ•˜๊ณ ,

๊ฒŒ์‹œ๊ธ€๋งˆ๋‹ค ํŽ˜์ด์ง€๊ฐ€ ๋‹ค๋ฅด๋‹ˆ MPA๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ฐ„๋‹จํ•œ Web Application์ด๋‚˜ ํ‹ฐ์Šคํ† ๋ฆฌ ๊ฐ™์€ ๋ธ”๋กœ๊ทธ๋Š” MPA๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ๋„ ์˜คํžˆ๋ ค ์žฅ์ ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.

 

MPA์˜ ์žฅ๋‹จ์ ์€ SPA์˜ ์ •๋ฐ˜๋Œ€๋ผ๊ณ  ๋ณด๋ฉด ๋œ๋‹ค.

 


์ฐธ๊ณ 

- https://www.mindk.com/blog/single-page-applications-the-definitive-guide/
- https://hanamon.kr/spa-mpa-ssr-csr-์žฅ๋‹จ์ -๋œป์ •๋ฆฌ
๋ฐ˜์‘ํ˜•