Webpack์€ ์›น ๊ฐœ๋ฐœ ์—…๊ณ„๋ฅผ ๊ฐ•ํƒ€ํ•œ ๋งค์šฐ ์œ ๋ช…ํ•˜๊ณ  ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์˜คํ”ˆ ์†Œ์Šค JavaScript ๋ชจ๋“ˆ ๋ฒˆ๋“ค๋Ÿฌ์ž…๋‹ˆ๋‹ค. ์›น์‚ฌ์ดํŠธ ๊ฐœ๋ฐœ์˜ ๋งฅ๋ฝ์—์„œ Webpack์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ข…์†์„ฑ์„ ๊ด€๋ฆฌํ•˜๊ณ  ์ž์‚ฐ์„ ์ตœ์ ํ™”ํ•˜๋ฉฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ชจ๋“ˆ์„ ๋ฒˆ๋“ค๋งํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๊ฐ•๋ ฅํ•˜๊ณ  ์œ ์—ฐํ•˜๋ฉฐ ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ๋นŒ๋“œ ๋„๊ตฌ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ํ˜„๋Œ€ ์›น ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์ด ์ ์  ๋” ๋ณต์žกํ•ด์ง์— ๋”ฐ๋ผ ๊ฐ•๋ ฅํ•˜๊ณ  ์•ˆ์ •์ ์ธ ๋นŒ๋“œ ์‹œ์Šคํ…œ์˜ ํ•„์š”์„ฑ์ด ์ค‘์š”ํ•ด์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Webpack์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋นŒ๋“œ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ„์†Œํ™”ํ•˜๊ณ  ์ตœ์ ํ™”ํ•˜์—ฌ ๊ธฐ๋Šฅ ๊ตฌํ˜„๊ณผ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜ ๊ฐœ์„ ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค.

๋†’์€ ์ˆ˜์ค€์—์„œ Webpack์€ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•˜๊ณ  ๋‹ค์–‘ํ•œ JavaScript ํŒŒ์ผ, CSS ์Šคํƒ€์ผ์‹œํŠธ, ์ด๋ฏธ์ง€ ๋ฐ ๊ธฐํƒ€ ์ž์‚ฐ์œผ๋กœ ๊ตฌ์„ฑ๋œ ์ข…์†์„ฑ ๊ทธ๋ž˜ํ”„๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์‚ฌ์šฉ์ž๊ฐ€ ๊ตฌ์„ฑํ•œ ๊ทœ์น™ ๋ฐ ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ธํŠธ์— ๋”ฐ๋ผ ์ด๋Ÿฌํ•œ ํŒŒ์ผ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ๊ฒฐ๊ณผ๋กœ ์ตœ์ ํ™”๋œ ์ฝ”๋“œ๋ฅผ ํ•˜๋‚˜ ์ด์ƒ์˜ ์ถœ๋ ฅ ํŒŒ์ผ๋กœ ๋ฌถ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์„ธ์Šค๋Š” ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ฐฐํฌ๋ฅผ ๋‹จ์ˆœํ™”ํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์„ฑ๋Šฅ๋„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค. ์ด์ œ ๋ธŒ๋ผ์šฐ์ €๋Š” ์…€ ์ˆ˜ ์—†์ด ๋งŽ์€ ๊ฐœ๋ณ„ ์ž์‚ฐ์ด ์•„๋‹Œ ํ•˜๋‚˜ ๋˜๋Š” ์†Œ์ˆ˜์˜ ํŒŒ์ผ์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

Webpack์˜ ๋ช…์„ฑ ์ƒ์Šน์€ ํŠนํžˆ React, Angular ๋ฐ Vue.js์™€ ๊ฐ™์€ ์ตœ์‹  ํ”„๋ŸฐํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ์˜ ๋งฅ๋ฝ์—์„œ ๋ชจ๋“ˆ์‹ JavaScript ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ์ธ๊ธฐ ์ฆ๊ฐ€์™€ ๋ฐ€์ ‘ํ•˜๊ฒŒ ์—ฐ๊ด€๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๊ตฌ์„ฑ ์š”์†Œ ๊ธฐ๋ฐ˜ ์•„ํ‚คํ…์ฒ˜์— ์ ํ•ฉํ•˜๋ฉฐ, ์ด๋Š” ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ ๋ชจ๋“ˆ์‹ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์ด‰์ง„ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ, ์ด๋Ÿฌํ•œ ์„œ๋กœ ๋‹ค๋ฅธ ์ฝ”๋“œ ์กฐ๊ฐ์„ ์ฒด๊ณ„์ ์ด๊ณ  ์ผ๊ด€๋œ ๊ตฌ์กฐ๋กœ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ณ  ๋ฌถ์„ ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“ˆ ๋ฒˆ๋“ค๋Ÿฌ์˜ ํ•„์š”์„ฑ์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. 2020๋…„ JavaScript ํ˜„ํ™ฉ ์„ค๋ฌธ ์กฐ์‚ฌ์— ๋”ฐ๋ฅด๋ฉด Webpack์€ ์‘๋‹ต์ž์˜ 80% ์ด์ƒ์ด ์‚ฌ์šฉํ•˜์—ฌ JavaScript ์ƒํƒœ๊ณ„์—์„œ ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ๋นŒ๋“œ ๋„๊ตฌ๊ฐ€ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

Webpack์˜ ํ•„์ˆ˜ ๊ธฐ๋Šฅ์€ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ฐ ๋กœ๋” ์‚ฌ์šฉ์„ ํ†ตํ•œ ํ™•์žฅ์„ฑ์ž…๋‹ˆ๋‹ค. ๋กœ๋”๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด Webpack์€ ํŒŒ์ผ์ด ์ข…์†์„ฑ ๊ทธ๋ž˜ํ”„์— ์ถ”๊ฐ€๋˜๊ธฐ ์ „์— ํŒŒ์ผ์„ ์ „์ฒ˜๋ฆฌํ•˜๊ณ  ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ TypeScript, LESS, ์‹ฌ์ง€์–ด HTML ๋ฐ ์ด๋ฏธ์ง€์™€ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ํŒŒ์ผ ์œ ํ˜•๊ณผ ํ˜•์‹์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด์— ํ”Œ๋Ÿฌ๊ทธ์ธ์€ Webpack ๋นŒ๋“œ ์ˆ˜๋ช… ์ฃผ๊ธฐ์— ํ›„ํฌ๋ฅผ ์ œ๊ณตํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๊ฐ€ ํ”„๋กœ์„ธ์Šค์˜ ๋‹ค์–‘ํ•œ ๋‹จ๊ณ„์—์„œ ์‚ฌ์šฉ์ž ์ •์˜ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ๊ณผ ๋กœ๋”๋กœ ๊ตฌ์„ฑ๋œ ์ด ๋ฐฉ๋Œ€ํ•œ ์—์ฝ”์‹œ์Šคํ…œ์€ Webpack์ด ์›น ๊ฐœ๋ฐœ์—์„œ ๋ชจ๋“ˆ ๋ฒˆ๋“ค๋ง์„ ์œ„ํ•œ ์„ ํƒ์œผ๋กœ์„œ์˜ ์ง€์œ„๋ฅผ ์œ ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํ˜„๋Œ€ ์›น ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ Webpack์˜ ์˜ํ–ฅ์„ ๋ณด์—ฌ์ฃผ๋Š” ๋Œ€ํ‘œ์ ์ธ ์˜ˆ๋Š” ์›น, ๋ชจ๋ฐ”์ผ ๋ฐ ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ•๋ ฅํ•œ no-code ํ”Œ๋žซํผ์ธ AppMaster ์™€์˜ ํ†ตํ•ฉ์ž…๋‹ˆ๋‹ค. AppMaster Webpack์„ ํ™œ์šฉํ•˜์—ฌ Vue3 ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ๋œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ฒˆ๋“ค๋ง ๋ฐ ์ตœ์ ํ™”๋ฅผ ์ฒ˜๋ฆฌํ•˜์—ฌ ์ถœ๋ ฅ์˜ ์„ฑ๋Šฅ์ด ๋›ฐ์–ด๋‚˜๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๋ฉฐ ํšจ์œจ์ ์ธ ๊ฒƒ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. Webpack์„ ๋นŒ๋“œ ํŒŒ์ดํ”„๋ผ์ธ์— ํ†ตํ•ฉํ•จ์œผ๋กœ์จ AppMaster ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ฐ„์†Œํ™”๋˜๊ณ  ์›ํ™œํ•œ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜์—ฌ ์‹œ๊ฐ์ ์œผ๋กœ ์‰ฝ๊ฒŒ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•˜๊ณ  ์ž์‹  ์žˆ๊ฒŒ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ Webpack์€ ๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ ๋ฐ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์ˆ˜์ค€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์—†์–ด์„œ๋Š” ์•ˆ๋  ๋„๊ตฌ์ž„์ด ์ž…์ฆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ•„์š”์— ๋”ฐ๋ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ชจ๋“ˆ์„ ๋กœ๋“œํ•˜๊ณ  ์ดˆ๊ธฐ ๋กœ๋“œ ์‹œ๊ฐ„์„ ํฌ๊ฒŒ ์ค„์ด๋Š” ์ฝ”๋“œ ๋ถ„ํ• ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ Webpack์€ ๊ณ ์„ฑ๋Šฅ, ๋ฏธ์…˜ ํฌ๋ฆฌํ‹ฐ์ปฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์žฅ๋น„๋ฅผ ์ž˜ ๊ฐ–์ถ”๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” Airbnb, Facebook, Google ๋“ฑ ์—…๊ณ„์˜ ๊ฑฐ๋ฌผ๊ธ‰ ๊ธฐ์—…์ด ์ฑ„ํƒํ•œ ๊ฒƒ์œผ๋กœ ์ž…์ฆ๋ฉ๋‹ˆ๋‹ค.

์›น ๊ฐœ๋ฐœ ์ถ”์„ธ๊ฐ€ ๊ณ„์† ๋ฐœ์ „ํ•˜๊ณ  ์„ฑ๋Šฅ์ด ๋›ฐ์–ด๋‚˜๊ณ  ์•ˆ์ •์ ์ธ ๋นŒ๋“œ ๋„๊ตฌ์— ๋Œ€ํ•œ ํ•„์š”์„ฑ์ด ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ Webpack์€ ํ˜„๋Œ€ ์›น ๊ฐœ๋ฐœ ํผ์ฆ์˜ ํ•„์ˆ˜ ๋ถ€๋ถ„์œผ๋กœ ๋‚จ์„ ์ค€๋น„๊ฐ€ ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์œ ์—ฐ์„ฑ, ํ™•์žฅ์„ฑ ๋ฐ ๋ถ€์ธํ•  ์ˆ˜ ์—†๋Š” ์˜ํ–ฅ์œผ๋กœ ์ธํ•ด ์›น ๊ฐœ๋ฐœ์ž์˜ ๋„๊ตฌ ์ƒ์ž์—์„œ ์—†์–ด์„œ๋Š” ์•ˆ ๋  ๊ตฌ์„ฑ ์š”์†Œ๋กœ ์ž๋ฆฌ ์žก์•˜์Šต๋‹ˆ๋‹ค. ์ข…์†์„ฑ ๊ด€๋ฆฌ, ์ž์‚ฐ ์ตœ์ ํ™” ๋ฐ ๋ชจ๋“ˆ ๋ฒˆ๋“ค๋ง ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‹จ์ˆœํ™”ํ•จ์œผ๋กœ์จ Webpack์€ ์›น ์‚ฌ์ดํŠธ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ์„ฑ๊ณต์ ์œผ๋กœ ์žฌ์ •์˜ํ–ˆ์œผ๋ฉฐ ๋” ๋‚˜์•„๊ฐ€ ํ˜„๋Œ€ ์‹œ๋Œ€ ๋””์ง€ํ„ธ ๊ฒฝํ—˜์˜ ์ž ์žฌ๋ ฅ์„ ์žฌ์ •์˜ํ–ˆ์Šต๋‹ˆ๋‹ค.