ํด๋ผ์ด์ธํธ์ธก ๋น๋ ๋๊ตฌ ๋๋ ๊ฐ๋จํ ํ๋ฐํธ์๋ ๋๊ตฌ๋ผ๊ณ ๋ ์๋ ค์ง ํ๋ฐํธ์๋ ๋น๋ ๋๊ตฌ๋ ์์ ์ ์๋ํํ๊ณ ํ๋ฐํธ์๋ ๊ฐ๋ฐ์์ ์์ ํ๋ฆ์ ๊ฐ์ํํ๋ ์ํํธ์จ์ด ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ ์ ํธ๋ฆฌํฐ ์ธํธ์ ๋๋ค. ์ด๋ฌํ ๋๊ตฌ๋ ๋ฐ๋ณต์ ์ด๊ณ ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆฌ๋ ์์ ์ ์๋ํํ๊ณ , ์ฝ๋๋ฒ ์ด์ค์ ๋ณต์ก์ฑ์ ์ต์ํํ๋ฉฐ, ์ ๋ฐ์ ์ธ ๊ฐ๋ฐ ๊ฒฝํ์ ํฅ์์์ผ ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ์ต์ ํํฉ๋๋ค. ์ด๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ํจ์จ์ ์ด๊ณ ํจ๊ณผ์ ์ผ๋ก ๊ตฌ์ถ, ์ต์ ํ ๋ฐ ๋ฐฐํฌํ๊ธฐ ์ํ ์ง์์ ์ ๊ณตํจ์ผ๋ก์จ ์ค๋๋ ์ ๋ณต์กํ ์น ์ ํ๋ฆฌ์ผ์ด์ ํ๊ฒฝ์์ ์ค์ํ ์ญํ ์ ํฉ๋๋ค.
ํ๋ฐํธ์๋ ๋น๋ ๋๊ตฌ๋ ์์ ์คํ๊ธฐ, ๋ฒ๋ค๋ฌ, ํจํค์ง ๊ด๋ฆฌ์, ๊ฐ๋ฐ ์๋ฒ ๋ฑ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ์์ ์คํ๊ธฐ๋ ์ฐ๊ฒฐ, ์ถ์, ๋ณํ๊ณผ ๊ฐ์ ์์ ์ ์๋ํํ๋ ๋ฐ๋ฉด ๋ฒ๋ค๋ฌ๋ ๋ฐฐํฌ๋ฅผ ์ํ ์ข ์์ฑ ๋ฐ ํจํค์ง ์ฝ๋๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค. ํจํค์ง ๊ด๋ฆฌ์๋ ๋ค์ํ ๋ฆฌํฌ์งํ ๋ฆฌ ๋ฐ ๊ฐ๋ฐ ์๋ฒ์์ ์ํํธ์จ์ด ํจํค์ง๋ฅผ ์ค์นํ๊ณ ๊ด๋ฆฌํ๋ฉฐ ์ฆ๊ฐ์ ์ธ ์ฌ๋ก๋ ๋๋ HMR(ํซ ๋ชจ๋ ๊ต์ฒด) ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ์ ์ํ ๊ฐ๋ฐ์ ์ด์งํฉ๋๋ค.
์น ๊ฐ๋ฐ ์ปค๋ฎค๋ํฐ์์ ํ์คํ ๋ฐ ์ต์ ํ์ ๋ํ ํ์์ฑ์ด ์ฆ๊ฐํจ์ ๋ฐ๋ผ ์ง๋ ๋ช ๋ ๋์ ํ๋ฐํธ์๋ ๋น๋ ๋๊ตฌ์ ์๊ฐ ๊ธฐํ๊ธ์์ ์ผ๋ก ์ฆ๊ฐํ์ต๋๋ค. 2021๋ ์คํ ์ค๋ฒํ๋ก ๊ฐ๋ฐ์ ์ค๋ฌธ ์กฐ์ฌ์ ๋ฐ๋ฅด๋ฉด ๊ฐ๋ฐ์์ 70% ์ด์์ด ์ผ์ ์์ ์์ ์ด๋ค ํํ๋ก๋ ํ๋ฐํธ์๋ ๋น๋ ๋๊ตฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋๋ฆฌ ์ฌ์ฉ๋๋ ํ๋ฐํธ์๋ ๋น๋ ๋๊ตฌ๋ก๋ Webpack, Gulp, Grunt, Rollup, Parcel ๋ฐ Browserify๊ฐ ์์ต๋๋ค. ๊ฐ ๋๊ตฌ์๋ ๊ณ ์ ํ ๊ธฐ๋ฅ, ์ฅ์ ๋ฐ ์ ํ ์ฌํญ์ด ์์ผ๋ฏ๋ก ํ๋ก์ ํธ์ ํน์ ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ ์ฌ๋ฐ๋ฅธ ๋๊ตฌ๋ฅผ ์ ํํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
์๋ฅผ ๋ค์ด, ๋ฐฑ์๋, ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ถ์ ์ํ ๊ฐ๋ ฅํ no-code ํ๋ซํผ์ธ AppMaster ์์๋ ์ฌ์ฉ์๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํํ๊ฒ ๊ตฌ์ถ, ํ ์คํธ ๋ฐ ๋ฐฐํฌํ ์ ์๋๋ก ํ๋ ๋ฐ ์ค์ ์ ๋๊ณ ์์ต๋๋ค. AppMaster ๋ํํ ์ฌ์ฉ์ ์ธํฐํ์ด์ค ๊ตฌ์ถ์ ์ํ ์ธ๊ธฐ ์๋ JavaScript ํ๋ ์์ํฌ์ธ Vue3๋ฅผ ์ฌ์ฉํ์ฌ ์์ฑ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ ์ง ๊ด๋ฆฌ ๊ฐ๋ฅํ๊ณ ์ฑ๋ฅ์ด ๋ฐ์ด๋๋ฉฐ ํ์ฅ ๊ฐ๋ฅํ๋๋ก ๋ณด์ฅํฉ๋๋ค. ์ด๋ ๋ฒ๋ค๋ฌ๋ถํฐ ์ฝ๋ ์ถ์๊ธฐ ๋ฐ ์ต์ ํ ํ๋ก๊ทธ๋จ์ ์ด๋ฅด๊ธฐ๊น์ง ๋ด๋ถ ์ ํ๋ฆฌ์ผ์ด์ ๋น๋ ํ๋ก์ธ์ค์ ์ผ๋ถ๋ก ๋ค์ํ ํ๋ฐํธ์๋ ๋น๋ ๋๊ตฌ๋ฅผ ํ์ฉํ์ฌ ๋ฌ์ฑ๋ฉ๋๋ค. ๋ฐ๋ผ์ AppMaster ์ฌ์ฉ์๋ ํ ์คํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ๋ ๋์ ํ๋ฐํธ์๋ ๋น๋ ๋๊ตฌ์ ์ฑ๋ฅ๊ณผ ์ ์ฐ์ฑ์ ํฌ๊ฒ ํ์ฉํ ์ ์์ต๋๋ค.
๋ค์์ ํ๋ฐํธ์๋ ๋น๋ ๋๊ตฌ์ ์ฃผ์ ๊ตฌ์ฑ์์์ ๋ํ ์์ธํ ๊ฐ์์ ๋๋ค.
1. ์์ ์คํ๊ธฐ: ์ฌ๋ฌ ์์ ์ ๋์์ ๋๋ ์์ฐจ์ ์ผ๋ก ์กฐ์ ํ๊ณ ์คํํ์ฌ ๋ฐ๋ณต์ ์ธ ์์ ์ ์๋ํํฉ๋๋ค. ์ธ๊ธฐ ์๋ ์์ ์คํ๊ธฐ์๋ Gulp์ Grunt๊ฐ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ๊ฐ๋ฐ์๋ JavaScript๋ก ์ฌ์ฉ์ ์ ์ ์์ ์ ์์ฑํ ์ ์์ผ๋ฏ๋ก ๋ ๋์ ์ ์ด์ ์ ์ฐ์ฑ์ด ๊ฐ๋ฅํฉ๋๋ค. ์์ ์๋ ์ผ๋ฐ์ ์ผ๋ก ์ฐ๊ฒฐ, ์ถ์, ๋ณํ ๋ฐ ๋ฆฐํธ๊ฐ ํฌํจ๋ฉ๋๋ค.
2. ๋ฒ๋ค๋ฌ: ๋ฒ๋ค๋ฌ๋ ์ข ์์ฑ๊ณผ ํจ๊ป ์ ํ๋ฆฌ์ผ์ด์ ์ฝ๋๋ฅผ ๋ฒ๋ค์ด๋ผ๊ณ ํ๋ ๋จ์ผ ๋๋ ์ฌ๋ฌ ๊ฐ์ ์ต์ ํ๋ ์ถ๋ ฅ ํ์ผ๋ก ํจํค์งํฉ๋๋ค. Webpack ๋ฐ Rollup๊ณผ ๊ฐ์ ๋ฒ๋ค๋ฌ๋ ์ข ์์ฑ ๊ทธ๋ํ๋ฅผ ์ง๋ฅ์ ์ผ๋ก ๋ถ์ํ์ฌ ์ต์ ํ๋ ๋ฒ๋ค์ ์์ฑํ์ฌ HTTP ์์ฒญ ์๋ฅผ ์ค์ด๊ณ ์ฑ๋ฅ์ ํฅ์์ํต๋๋ค. ๋ํ ์ฝ๋ ๋ถํ (์ง์ฐ ๋ก๋ฉ), ํธ๋ฆฌ ์์ดํน, ๊ฐ๋ฐ ์ค ์ ํ๋ฆฌ์ผ์ด์ ์๋ ๋ค์ ๋ก๋์ ๊ฐ์ ๊ธฐ๋ฅ๋ ์ ๊ณตํฉ๋๋ค.
3. ํจํค์ง ๊ด๋ฆฌ์: npm ๋ฐ Yarn๊ณผ ๊ฐ์ ํจํค์ง ๊ด๋ฆฌ์๋ ์ํํธ์จ์ด ํจํค์ง๋ฅผ ๊ด๋ฆฌํ๊ณ ๋ฐฐํฌํ๋ ์ผ์ ๋ด๋นํฉ๋๋ค. ํจํค์ง ์ข ์์ฑ์ ์ ์งํ๊ณ ๋ฒ์ ํธํ์ฑ์ ๋ณด์ฅํ๋ฉด์ ํจํค์ง ์ค์น, ์ ๋ฐ์ดํธ ๋ฐ ๊ตฌ์ฑ ํ๋ก์ธ์ค๋ฅผ ๋จ์ํํฉ๋๋ค. ํจํค์ง ๊ด๋ฆฌ์๋ ๋ค์ํ ์ฌ์ฉ ์ฌ๋ก์ ๊ฑธ์ณ ์๋ฐฑ๋ง ๊ฐ์ ํจํค์ง๋ฅผ ์ฌ์ฉํ ์ ์์ผ๋ฏ๋ก ํ๋ ์น ๊ฐ๋ฐ์์ ์์ด์๋ ์ ๋ ์์๊ฐ ๋์์ต๋๋ค.
4. ๊ฐ๋ฐ ์๋ฒ: ๊ฐ๋ฐ ์ค์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๊ณตํ๊ธฐ ์ํด ๊ฐ๋ฐ์์ ์ปดํจํฐ์์ ๋ก์ปฌ๋ก ์คํ๋๋ ์น ์๋ฒ์ ๋๋ค. Browsersync, webpack-dev-server ๋ฐ Live Server๋ ์๋ ์ฌ๋ก๋ฉ, ํซ ๋ชจ๋ ๊ต์ฒด, ์ฌ์ง์ด ์ฌ๋ฌ ๋ธ๋ผ์ฐ์ ์ ์ฅ์น์ ๊ฑธ์น ๋๊ธฐํ ํ ์คํธ์ ๊ฐ์ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ์ ์ฒด ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ๋์ฑ ํจ์จ์ ์ผ๋ก ๋ง๋๋ ์ธ๊ธฐ ์๋ ๊ฐ๋ฐ ์๋ฒ์ ๋๋ค.
5. ์ฝ๋ ๋ฆฐํฐ ๋ฐ ํฌ๋งทํฐ: ESLint ๋ฐ Stylelint์ ๊ฐ์ ์ฝ๋ ๋ฆฐํฐ๋ ์ผ๊ด๋ ์ฝ๋ฉ ์คํ์ผ์ ์ ์ฉํ๊ณ ์ ์ฌ์ ์ธ ์ค๋ฅ๊ฐ ํ๋ก๋์ ํ๊ฒฝ์ ์ ์ฉ๋๊ธฐ ์ ์ ์ด๋ฅผ ํฌ์ฐฉํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. Prettier์ ๊ฐ์ ํฌ๋งทํฐ๋ ์์ค ์ฝ๋์ ํ์์ ์๋์ผ๋ก ์ง์ ํ์ฌ ์ผ๊ด์ฑ์ ๋์ฑ ๋ณด์ฅํ๊ณ ๊ฐ๋ ์ฑ์ ํฅ์์ํต๋๋ค.
6. ํธ๋์คํ์ผ๋ฌ ๋ฐ ํด๋ฆฌํ: Babel๊ณผ ๊ฐ์ ํธ๋์คํ์ผ๋ฌ๋ ์ต์ JavaScript ๊ตฌ๋ฌธ์ ๋๋ถ๋ถ์ ๋ธ๋ผ์ฐ์ ์์ ๋๋ฆฌ ์ง์๋๋ ๋๋ฑํ ์ด์ ๊ตฌ๋ฌธ์ผ๋ก ๋ณํํฉ๋๋ค. ์ด๋ฅผ ํตํด ๊ฐ๋ฐ์๋ ๋ธ๋ผ์ฐ์ ํธํ์ฑ์ ์์์ํค์ง ์๊ณ ์ต์ ๊ธฐ๋ฅ๊ณผ ๊ฐ์ ์ฌํญ์ ์ฌ์ฉํ์ฌ ์ฝ๋๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. Polyfill์ ์ด์ ๋ธ๋ผ์ฐ์ ์์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ง์๋์ง ์๋ ๊ธฐ๋ฅ์ ๋์ฒด ๊ตฌํ์ ์ ๊ณตํ์ฌ ๋ค์ํ ๋ธ๋ผ์ฐ์ ์ ์ฅ์น์์ ์ผ๊ด๋ ์ฌ์ฉ์ ๊ฒฝํ์ ๋ณด์ฅํฉ๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, ํ๋ฐํธ์๋ ๋น๋ ๋๊ตฌ๋ ํ๋ ์น ๊ฐ๋ฐ์ ํ์์ ์ด๋ฉฐ ์ผ์์ ์ธ ์์ ์ ์๋ํํ๊ณ ๋ฐฐํฌ์ฉ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ต์ ํํ๋ ๋ฐ ์์ฒญ๋ ๊ฐ์น๋ฅผ ์ ๊ณตํฉ๋๋ค. ํ๋ฐํธ์๋ ๋น๋ ๋๊ตฌ ์์ฝ์์คํ ์ ์ฌ์ฉํ๋ฉด ๊ฐ๋ฐ์๋ ๊ธฐ๋ฅ ๊ตฌ์ถ๊ณผ ์ ํ๋ฆฌ์ผ์ด์ ํ์ง ๋ณด์ฅ์ ๋ ์ง์คํ ์ ์์ด ๊ถ๊ทน์ ์ผ๋ก ์ ๊ณต ์ฃผ๊ธฐ๊ฐ ๋นจ๋ผ์ง๊ณ ๊ฐ๋ฐ ๋น์ฉ์ด ์ ๊ฐ๋ฉ๋๋ค. ๊ฐ๋ ฅํ no-code ํ๋ซํผ์ธ AppMaster ๋ ์ด๋ฌํ ๋๊ตฌ์ ๊ธฐ๋ฅ์ ํ์ฉํ์ฌ ์ฌ์ฉ์์๊ฒ ๋ค์ํ ๋๋ฉ์ธ๊ณผ ์ฐ์ ์ ๋ฐ์ ๊ฑธ์ณ ํ ์คํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ ๋ ๊ฐ์ํ๋๊ณ ๊ฐ์ํ๋ ๊ฒฝํ์ ์ ๊ณตํฉ๋๋ค.