5.Parcel & ESLint
Parcel
ํ์ฌ ๋๋ ํ์ฌ์์ ํ๋ก์ ํธ ๊ตฌ์ฑ์ผ๋ก webpack์ ์ฌ์ฉํ๊ณ ์๋ ์ค์ด๋ค. 1์ฃผ์ฐจ ๊ฐ์๋ฅผ ๋ค์ผ๋ฉด์ ์ด๊ณณ์์ parcel์ ์ฌ์ฉํ๊ธฐ์ ์ parcel์ ์ฌ์ฉํ๋์ง ๊ถ๊ธํ์๋ค. ๊ทธ๋์ ๊ตฌ๊ธ๋ง์ ํตํด์ ๊ฒ์ํ ๋ธ๋ก๊ทธ๋ฅผ ๋ฐํ์ผ๋ก ํน์ง์๋ ๋ถ๋ถ๋ง ์์ฝํ์๋ค.
Parcel
์ ์ค์ ์ด ํ์์๋ zero-configuration ์ด๊ธฐ ๋๋ฌธ์, ๋น๋๋ฅผ ์ํด ๋ฒ๋ค๋ฌ๋ฅผ ํ์ตํ๋ ์๊ฐ์ ๋ง์ด ์ค์ผ ์ ์๋ค.
Webpack
์ ๋นํ๋ฉด ์ด ๋ถ๋ถ์ ํฐ ์ฅ์ ์ธ ๊ฒ ๊ฐ๋ค. Webpack
์ ์ฌ์ฉํ๋ฉด์ ์ผ๋ถ ์ค์ ์ ๊ฑด๋๋ ค์ผ ํ๋ ๋ถ๋ถ์ด ๋ฐ์ ํ์ ๋ Webpack
๊ณต์๋ฌธ์๊ฐ ์ ๋์ด์์ง๋ง ์์ ํด์ผ ํ๋ ๋ถ๋ถ์ ๋ํ ์ค์ ํ์
๊ณผ ํจ๊ป ์จ์ผ ํ๋ plugin
์ข
๋ฅ๋ ๋ง๊ณ ๊ณต์๋ฌธ์๋ฅผ ๋ณด๊ณ ์์ฑํ์ด๋ ๋ด ์ดํด์ ํ๊ณ๋ก ์ธํด์ ์ ๋ชป ์ค์ ํ ๋ถ๋ถ๋ ์์๋ ํฐ๋ผ Parcel
์ ์ค์ ์ด ํ์์๋ ๋ถ๋ถ์ ์ ๋ง ๋งค๋ ฅ์ ์ธ ๊ฒ ๊ฐ๋ค.
Transformations
Parcel
์ zero-configuration ํน์ง์ผ๋ก ๋ณ๋์ ์ค์ ํ์ผ ์์ด ๋ค์ํ ๋ณํ์ ์ง์ํ๋ค.
Tree Shaking (Dead code elimination)
Parcel
์ ES6๋ฐ CommonJS ๋ชจ๋ ๋ชจ๋์ ๋ํด Tree shaking์ ์ง์ํ๋ค. ๋ํ ๋๋ถ๋ถ์ ์์ ์ ์บ์ฑํ์ฌ ๋ค์ ๋น๋ํ ๊ฒฝ์ฐ ๋น ๋ฅธ ์๋๋ฅผ ์ง๋๊ณ ์๋ค.
Code splitting
Parcel
์ Code splitting์ zero-configuration ์ด๋ผ๋ ํน์ง์ผ๋ก ํ์ธ ํ ์ ์๋ค. import() ํจ์ ๊ตฌ๋ฌธ ์ ์ฌ์ฉํ์ฌ ์ ์ด๋๋ฉฐ, ์ด๋ ์ผ๋ฐ import ๋ฌธ์ด๋ require ํจ์์ฒ๋ผ ์๋ํ์ง๋ง Promise๋ฅผ ๋ฐํํ๋ค. ์ด๋ ๋ชจ๋์ด ๋น๋๊ธฐ์ ์ผ๋ก ๋ก๋๋จ์ ์๋ฏธํ๋ค.
Dev Server
Parcel
์ Dev server๊ฐ ๋ด์ฅ๋์ด ์๊ณ , ํ์ผ์ด ๋ณ๊ฒฝํ ๊ฒฝ์ฐ ๋ค์ ๋น๋ ํ๋ค.
Hot Module Replacement
Parcel
์ ๊ธฐ๋ณธ์ ์ผ๋ก HMR์ ์ง์ํ๋ค.์ด ๊ธฐ๋ฅ์ ์ฝ๋๊ฐ ์คํ๋๋ ๋์ ์ ์ฒด ๋ฆฌ๋ก๋๋ฅผ ํ ํ์์์ด ๋ชจ๋์ ์ถ๊ฐ, ์ ๊ฑฐ ํ ์ ์๋ ๊ธฐ๋ฅ์ ์ด์ผ๊ธฐ ํ๋ค.
Parcel
์์๋ zero-configuration์ด๋ผ๊ณ ํ์ง๋ง plugin์ ์ ๊ณตํด ์๊ท๋ชจ์์ ๋๊ท๋ชจ ์ ํ๋ฆฌ์ผ์ด์
๊น์ง ํ์ฅ ๊ฐ๋ฅํ๊ฒ ์ง์ํด์ฃผ๊ณ ์๋ค.
์ฐธ๊ณ
ESLint
ESLint
๋ JavaScript, JSX์ ์ ์ ๋ถ์ ๋๊ตฌ๋ก ์คํ ์์ค ํ๋ก์ ํธ์ด๋ค. ์ฝ๋๋ฅผ ๋ถ์ํด ๋ฌธ๋ฒ์ ์ธ ์ค๋ฅ๋ ์ํฐ ํจํด์ ์ฐพ์์ฃผ๊ณ ์ผ๊ด๋ ์ฝ๋ ์คํ์ผ๋ก ์์ฑํ๋๋ก ๋์์ค๋๋ค. JSLint, JSHint์ ๊ฐ์ด ๋ค๋ฅธ JavaScript ์ ์ ๋ถ์ ๋๊ตฌ๋ค๋ ์์ง๋ง, ESLint
๊ฐ ์ปค์คํฐ๋ง์ด์ง์ด ์ฝ๊ณ ํ์ฅ์ฑ์ด ๋ฐ์ด๋ ๋ง์ด ์ฐ์ด๊ณ ์๋ ์ถ์ธ์ด๋ค. ESLint
๋ ์คํ์ผ ๊ฐ์ด๋๋ฅผ ์ข ๋ ํธ๋ฆฌํ๊ฒ ์ ์ฉํ๊ธฐ ์ํด ์ฌ์ฉํ๊ธฐ๋ ํ๋๋ฐ, ์ธ๋ถ์ ๊ณต๊ฐ๋์ด ๋ง์ ๊ฐ๋ฐ์๊ฐ ์ฌ์ฉ ์ค์ธ Airbnb Style Guide, Google Style Guide ๊ฐ ๊ทธ ๋ํ์ ์ธ ์์ด๋ค.
ํ์ฌ ์๋น์ค ์ค์ธ ํ๋ก์ ํธ์์๋ ESLint
๋ฅผ ์ฌ์ฉํ๊ณ ์์ง๋ง ํผ์ ์์
์ ํ๋ค๋ณด๋ Coding convention
์ด ์ ๋๋ก ์ง์ผ์ง์ง ์์ ๋๊ฐ ๋ง์๋ค.
ESLint
๊ฐ ์์ง๋ง ๋ด๊ฐ ๋ณด๊ธฐ ํธํ ์ชฝ์ผ๋ก ํ๊ธฐ ์ํด์ ๋ฆฐํธ๋ฅผ ๊บผ๋ฒ๋ฆฌ๋ ๊ฒฝ์ฐ๋ ์์๋๋ฐ ์์ผ๋ก๋ ํน๋ณํ ๊ฒฝ์ฐ๊ฐ ์๋ ์ด์ ๋ฆฐํธ๋ฅผ ํตํด์ ์ผ๊ด์ฑ ์๋ ์ฝ๋๋ฅผ ์์ฑํ๋๋ก ๋
ธ๋ ฅํด์ผ๊ฒ ๋ค.
์ฐธ๊ณ
Last updated