# [[SPA (Single Page Application)|SPA (Single Page Application]] ## ๐Ÿ“Œ Brief Summary SPA(Single Page Application)๋Š” ์ฃผ๋กœ ํด๋ผ์ด์–ธํŠธ ์ธก ๋ Œ๋”๋ง(CSR) ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌ์ถ•๋˜๋Š” ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ˜•ํƒœ์ž…๋‹ˆ๋‹ค [1, 2]. ์ดˆ๊ธฐ ๋กœ๋“œ ์‹œ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์ „์ฒด ํŽ˜์ด์ง€๋ฅผ ๋ฐ›์•„์˜ค๋Š” ๋Œ€์‹  ์ตœ์†Œํ•œ์˜ ๋ผˆ๋Œ€๋งŒ ํฌํ•จ๋œ ๋‹จ์ผ HTML์„ ๋กœ๋“œํ•˜๊ณ , ์ดํ›„์—๋Š” [[JavaScript|JavaScript]]๋ฅผ ์ด์šฉํ•ด ๋ธŒ๋ผ์šฐ์ € ๋‚ด์—์„œ ๋™์ ์œผ๋กœ ์ฝ˜ํ…์ธ ์™€ ๋ผ์šฐํŒ…์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค [2, 3]. ์ด๋ฅผ ํ†ตํ•ด ๋งค๋ฒˆ ํŽ˜์ด์ง€๋ฅผ ์ƒˆ๋กœ๊ณ ์นจํ•  ํ•„์š” ์—†์ด ๋ถ€๋“œ๋Ÿฝ๊ณ  '์•ฑ๊ณผ ๊ฐ™์€(app-like)' ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ํŠน์ง•์ž…๋‹ˆ๋‹ค [4, 5]. ## ๐Ÿ“– Core Content - **๋ Œ๋”๋ง ๋ฐฉ์‹ ๋ฐ ์ž‘๋™ ์›๋ฆฌ:** SPA๋Š” ํด๋ผ์ด์–ธํŠธ ์ธก ๋ Œ๋”๋ง(CSR) ํ™˜๊ฒฝ๊ณผ ๋—„ ์ˆ˜ ์—†๋Š” ๊ด€๊ณ„๋ฅผ ๊ฐ–์Šต๋‹ˆ๋‹ค [1, 2]. ์‚ฌ์šฉ์ž๊ฐ€ SPA์— ์ ‘์†ํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ €๋Š” ํ—ค๋”, ํ‘ธํ„ฐ, ๋‚ด๋น„๊ฒŒ์ด์…˜ ๋ฐ” ๋“ฑ ๋ฐ˜๋ณต๋˜๋Š” ์š”์†Œ๊ฐ€ ํฌํ•จ๋œ ๋ผˆ๋Œ€ ์ˆ˜์ค€์˜ ์ตœ์†Œ HTML๊ณผ JavaScript ๋ฒˆ๋“ค์„ ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค [2, 3, 5, 6]. ์ดˆ๊ธฐ ๋กœ๋“œ ์ดํ›„์—๋Š” ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์ƒˆ๋กœ์šด ์ „์ฒด ํŽ˜์ด์ง€๋ฅผ ์š”์ฒญํ•˜์ง€ ์•Š์œผ๋ฉฐ, JavaScript๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๋™์ ์œผ๋กœ ๊ฐ€์ ธ์™€ ๋ธŒ๋ผ์šฐ์ € ๋‚ด์—์„œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ง์ ‘ ๊ตฌ์ถ•ํ•˜๊ณ  ๊ฒฝ๋กœ(Route)๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค [3, 5, 6]. - **์„ฑ๋Šฅ์  ์ด์  ๋ฐ ์žฅ์ :** ์ „์ฒด ํŽ˜์ด์ง€๋ฅผ ๋‹ค์‹œ ๋กœ๋“œํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ๋Š๊น€ ํ˜„์ƒ์„ ์—†์• ๊ณ , ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋งŒ ์„œ๋ฒ„์—์„œ ๋ฐ›์•„ ํ˜„์žฌ ํŽ˜์ด์ง€๋ฅผ ๋™์ ์œผ๋กœ ๋ฎ์–ด์“ฐ๊ธฐ ๋•Œ๋ฌธ์— ๋งค์šฐ ์œ ๋™์ ์ด๊ณ  ์ฆ‰๊ฐ์ ์ธ ๋ฐ˜์‘์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค [5, 7]. ๋˜ํ•œ, HTML, CSS, JavaScript ํŒŒ์ผ๋งŒ ์„œ๋น„์Šคํ•  ์ˆ˜ ์žˆ๋Š” ์ •์  ์„œ๋ฒ„๋งŒ์œผ๋กœ๋„ ํ˜ธ์ŠคํŒ…์ด ๊ฐ€๋Šฅํ•˜์—ฌ ๊ณ ๋น„์šฉ์˜ ์„œ๋ฒ„ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ์˜์กด๋„ ๋ฐ ํ˜ธ์ŠคํŒ… ๋น„์šฉ์„ ํฌ๊ฒŒ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [8]. - **ํ•œ๊ณ„์  ๋ฐ ๋‹จ์ :** ์‚ฌ์šฉ์ž๊ฐ€ ์ฒซ ํ™”๋ฉด์„ ๋ณด๊ธฐ ์ „์— ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋ชจ๋“  JavaScript ์ฝ”๋“œ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ํŒŒ์‹ฑ ๋ฐ ์‹คํ–‰ํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์ดˆ๊ธฐ ๋กœ๋”ฉ ์†๋„(First Contentful Paint)๊ฐ€ ์ƒ๋Œ€์ ์œผ๋กœ ๋А๋ฆฝ๋‹ˆ๋‹ค [4, 9, 10]. ๋˜ํ•œ ์ฒ˜์Œ ์„œ๋ฒ„์—์„œ ์ œ๊ณตํ•˜๋Š” HTML์ด ๊ฑฐ์˜ ๋น„์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, JavaScript๋ฅผ ์›ํ™œํ•˜๊ฒŒ ์‹คํ–‰ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒ€์ƒ‰ ์—”์ง„ ํฌ๋กค๋Ÿฌ์—๊ฒŒ๋Š” ์ฝ˜ํ…์ธ ๊ฐ€ ๋ณด์ด์ง€ ์•Š์•„ ๊ฒ€์ƒ‰ ์—”์ง„ ์ตœ์ ํ™”(SEO) ์ธก๋ฉด์—์„œ ํ•œ๊ณ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค [4, 9, 11, 12]. - **์ฃผ์š” ์‚ฌ์šฉ ์‚ฌ๋ก€:** SEO๊ฐ€ ์ตœ์šฐ์„  ๊ณ ๋ ค ์‚ฌํ•ญ์ด ์•„๋‹ˆ๊ณ  ํ’๋ถ€ํ•œ ์ƒํ˜ธ์ž‘์šฉ๊ณผ ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ๊ฐ€ ์ค‘์š”ํ•œ ํ™˜๊ฒฝ์— ๊ฐ€์žฅ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค [13, 14]. ์ฃผ๋กœ ๋กœ๊ทธ์ธ ์žฅ๋ฒฝ ๋’ค์— ์žˆ๋Š” ์‚ฌ์šฉ์ž ๋Œ€์‹œ๋ณด๋“œ, ๋‚ด๋ถ€ ๋น„์ฆˆ๋‹ˆ์Šค ๋„๊ตฌ, [[SaaS|SaaS]](Software as a Service) ํ”Œ๋žซํผ ๋“ฑ์˜ ๊ตฌ์ถ•์— ํ™œ์šฉ๋˜๋ฉฐ, React, Vue.js, Angular์™€ ๊ฐ™์€ ์ตœ์‹  ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ SPA ๊ตฌ์ถ•์— ๋„๋ฆฌ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค [6, 13-16]. ## ๐Ÿ”— Knowledge Connections - **Related Topics:** [[Client-Side Rendering (CSR)|Client-Side Rendering (CSR]], First Contentful Paint (FCP), Search Engine Optimization (SEO, React, Document Object Model (DOM) - **Projects/Contexts:** SaaS ํ”Œ๋žซํผ, ์‚ฌ์šฉ์ž ๋Œ€์‹œ๋ณด๋“œ, ๋‚ด๋ถ€ ๋น„์ฆˆ๋‹ˆ์Šค ๋„๊ตฌ - **Contradictions/Notes:** ์†Œ์Šค๋Š” SPA ๋ฐ CSR ๋ฐฉ์‹์ด ์ƒํ˜ธ์ž‘์šฉ์„ฑ์ด ๋›ฐ์–ด๋‚œ ๋ฐ ๋ฐ˜ํ•ด SEO์™€ ์ดˆ๊ธฐ ๋กœ๋”ฉ ์†๋„์— ์•ฝ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๊ณ  ์ง€์ ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฒ€์ƒ‰ ๋…ธ์ถœ์ด ์ค‘์š”ํ•œ ๋งˆ์ผ€ํŒ… ํŽ˜์ด์ง€๋‚˜ ๋ธ”๋กœ๊ทธ, ์ „์ž์ƒ๊ฑฐ๋ž˜ ์‚ฌ์ดํŠธ ๋“ฑ์—์„œ๋Š” ์ˆœ์ˆ˜ SPA(CSR) ๋Œ€์‹  SSR(Server-Side Rendering)์ด๋‚˜ SSG(Static Site Generation) ๋ฐฉ์‹์„ ์ ์šฉํ•˜๊ฑฐ๋‚˜ ํ˜ผํ•ฉ(Hybrid)ํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๊ถŒ์žฅ๋ฉ๋‹ˆ๋‹ค [11, 13, 17, 18]. --- *Last updated: 2026-04-25*