Nodejs, npm, yarn
๐ Node.js๋?
Nodejs๋ Chrome V8 JavaScript ์์ง์ผ๋ก ๋น๋ ๋ JavaScript์ ๋ฐํ์ ์ ๋๋ค. (by Node ๊ณต์ ํ์ด์ง)
๋ฐํ์์ด๋? ํน์ ์ธ์ด๋ก ๋ง๋ ํ๋ก๊ทธ๋จ์ ์คํํ ์ ์๋ ํ๊ฒฝ
Nodejs๋ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ๋ธ๋ผ์ฐ์ ๋ด์์ ๋ง๊ณ ๋ ๋ค๋ฅธํ๊ฒฝ์์ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ ์ ์๊ฒ ํฉ๋๋ค.
Node.js ์ ์ ๋
ํฌ๋กฌ๊ฐ์ ๋ธ๋ผ์ฐ์ ์๋ html์ ๋์ ์ผ๋ก ์์ง์ผ ์ ์๊ฒํ๋ ์๋ฐ์คํฌ๋ฆฝํธ ํด์ ์์ง์ด ์์ต๋๋ค.
ํฌ๋กฌ์ V8, ๋ชจ์ง๋ผ๋ SpiderMonkey๋ฅผ ์ฌ์ฉํฉ๋๋ค.
๋ธ๋ผ์ฐ์ ์ค ํฌ๋กฌ์ด ์ธ๊ธฐ๊ฐ ์๋ ์ด์ ์ค ํ๋๋ ๋น ๋ฅธ ์๋์ ๋๋ค.
์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ํด์ํ๋ ์๋๊ฐ ๋น ๋ฅด๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์๊ฐ ๋ธ๋ผ์ฐ์ ๋ฅผ ์ด์ฉํ ๋ ์๋๊ฐ ๋น ๋ฅด๋ค๊ณ ๋๋ผ๊ฒ ๋ฉ๋๋ค.
ํฌ๋กฌ์ ์ฌ์ฉํ๋ ํด์ ์์ง์ธ V8์ Node.js๋ผ๋ ์ด๋ฆ์ผ๋ก ๋ฐ๋ก ์ถ์ํฉ๋๋ค.
๐ npm(Node Packaged Manager)
npm์ Node.js์ ํจํค์ง ๊ด๋ฆฌ์์ ๋๋ค.
npm์ Node.js๋ก ๋ง๋ค์ด์ง ๋ชจ๋์ ์น์์ ๋ฐ์์ ์ค์นํ๊ณ ๊ด๋ฆฌํด์ฃผ๋ ํ๋ก๊ทธ๋จ์ ๋๋ค.
npm์ ์ฌ์ฉํ์ฌ ํจํค์ง๋ฅผ ์ค์นํ๋ฉด package.json
์์ ์ค์นํ ํจํค์ง๊ฐ ์๋์ผ๋ก ์ ๋ฆฌ๋ฉ๋๋ค.
๐ yarn
yarn ๋ํ npm๊ณผ ๊ฐ์ด javascript ํจํค์ง ๋งค๋์ ์ ๋๋ค.
yarn์ ์ฌ์ฉํ๋ฉด npm ๋ณด๋ค ๋ ๋์ ํ๊ฒฝ์์ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ ์ ์์ด ์ฌ์ฉ๋์ด ๋์ต๋๋ค.
yarn์ ์ฌ์ฉํ๋ ์ด์
1. ์๋
์ฐ์ npm๋ณด๋ค ๋น ๋ฆ ๋๋ค. ๋ค์ด๋ฐ์ ํจํค์ง๋ฅผ ์บ์์ ์ ์ฅํ์ฌ ์ค๋ณต๋ ๋ฐ์ดํฐ๋ ๋ค์ด๋ก๋ํ์ง ์๊ณ ์บ์์ ์ ์ฅ๋ ํ์ผ์ ํ์ฉํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
npm์ ํจํค์ง๋ฅผ ์ค์นํ ๋ ์์ฐจ์ ์ผ๋ก ์ค์นํ๋ ๋ฐ๋ฉด, yarn์ ๋ณ๋ ฌ๋ก ์ฒ๋ฆฌํด ์๋๋ฉด์์ ์ฐ์ํฉ๋๋ค.
2. ์์ ์ฑ๊ณผ ๋ณด์
npm์ ์์กด ๊ด๊ณ๋ฅผ ๊ฐ์ง๋ ๋ค๋ฅธ ํจํค์ง๋ค์ด ํฌํจ๋์ง๋ง yarn์ package.json
์ ์๋ ํ์ผ๋ง ์ค์นํ๋ค๊ณ ํฉ๋๋ค.
๐ฌ ์ต์ ๋๊ธ