Jieunny์˜ ๋ธ”๋กœ๊ทธ

Unit 7. [Linux&Git ๊ธฐ์ดˆ] Node.js ๋ณธ๋ฌธ

CodeStates/learning contents

Unit 7. [Linux&Git ๊ธฐ์ดˆ] Node.js

Jieunny 2022. 12. 21. 13:06

๐Ÿ“ฃ Node.js 

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋Ÿฐํƒ€์ž„
๋Ÿฐํƒ€์ž„ : ์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ์ด ๋™์ž‘ํ•  ๋•Œ, ํ”„๋กœ๊ทธ๋žจ์ด ๋™์ž‘ํ•˜๋Š” ๊ณณ
์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์•„๋‹Œ ๊ณณ์—์„œ๋„ JS๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

โœ”๏ธ nvm

Node.js Version Manager
Node.js์˜ ๋‹ค์–‘ํ•œ ๋ฒ„์ „์„ ๊ด€๋ฆฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ
'node ํŒŒ์ผ์ด๋ฆ„' ์œผ๋กœ jsํŒŒ์ผ ์‹คํ–‰ ๊ฐ€๋Šฅ

Node.js์˜ ๋ฒ„์ „์ด ๋‹ฌ๋ผ ๋ฐœ์ƒํ•˜๋Š” ์—๋Ÿฌ ์‰ฝ๊ฒŒ ํ•ด๊ฒฐ ๊ฐ€๋Šฅ
โžฐ Node.js ์˜ ๋ฒ„์ „์„ ์†์‰ฝ๊ฒŒ ์˜ฎ๊ฒจ ๋‹ค๋‹ ์ˆ˜ ์žˆ๋‹ค.
nvm ls
# ํ˜„์žฌ nvm ์„ ํ†ตํ•ด ์„ค์น˜ํ•œ Node.js ๋ฒ„์ „ ์ถœ๋ ฅ

nvm install 12.18.3
# Node.js ํŠน์ • ๋ฒ„์ „ ๋‹ค์šด
# ์ด๋ฏธ ์„ค์น˜๋œ ๋ฒ„์ „์€ ์‚ญ์ œ๋˜์ง€ ์•Š์Œ.

nvm use ๋ฒ„์ „๋„˜๋ฒ„ 
# ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์€ Node.js ๋ฒ„์ „ ์‹คํ–‰

 

 

๐Ÿ“ฃ npm & package.json

โœ”๏ธ npm

Node Package Manager
Node.js์˜ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €
ํ•„์š”ํ•œ ๋ชจ๋“ˆ์„ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋Š”, ๋ชจ๋“ˆ๋“ค์ด ๋ชจ์—ฌ์žˆ๋Š” ๋ชจ๋“ˆ ์Šคํ† ์–ด

 

โœ”๏ธ package.json

ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰์‹œํ‚ค๊ธฐ ์œ„ํ•œ ๋ชจ๋“ˆ์ด ๋ฌด์—‡์ธ์ง€, ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•, ํ”„๋กœ๊ทธ๋žจ์„ ํ…Œ์ŠคํŠธ ํ•˜๋Š” ๋ฐฉ๋ฒ• ๋ช…์‹œ
ํ•„์š”ํ•œ ์‹ค์ œ ๋ชจ๋“ˆ์€ ๋”ฐ๋กœ node_modules๋ผ๋Š” ํด๋”์— ์ €์žฅ๋˜๊ณ , package.json์—๋Š” ์–ด๋–ค ๋ชจ๋“ˆ์ธ์ง€๋งŒ ์ ํ˜€ ์žˆ๋‹ค.
ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ๋ฅผ ์ „๋‹ฌํ•  ๋•Œ, ๋ชจ๋“ˆ์„ ์ „๋‹ฌํ•˜์ง€ ์•Š์•„๋„ package.json์— ํ•„์š”ํ•œ ๋ชจ๋“ˆ์ด ๋ช…์‹œ๋˜์–ด ์žˆ์–ด ์ฐพ์•„ ์“ฐ๋ฉด ๋œ๋‹ค.
'ํ”„๋กœ๊ทธ๋žจ์— ์ด๋Ÿฐ ๋ชจ๋“ˆ๋“ค์ด ํ•„์š”ํ•˜๋‹ค' ๋ผ๊ณ  ์•Œ๋ ค์ฃผ๋Š” ์—ญํ• 

โžฐ devDependencies : ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” ํ™˜๊ฒฝ์—์„œ ํ•„์š”ํ•œ ๋ชจ๋“ˆ์ด ๋ฌด์—‡์ธ์ง€ ๋ช…์‹œ(ํ”„๋กœ์ ํŠธ ๋™์ž‘์— ์ง์ ‘์  ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๋Š” ๋ชจ๋“ˆ)
๋ชจ๋“ˆ ์„ค์น˜ ์‹œ --save-dev ์˜ต์…˜๊ณผ ํ•จ๊ป˜ installํ•˜๋ฉด ์ž๋™์œผ๋กœ devDependencies์— ์ถ”๊ฐ€๋œ๋‹ค.
โžฐ dependencies : ํ”„๋กœ์ ํŠธ๊ฐ€ ๋Œ์•„๊ฐ€๊ธฐ ์œ„ํ•ด ๋ฐ˜๋“œ์‹œ  ํ•„์š”ํ•œ ๋ชจ๋“ˆ
๋ชจ๋“ˆ ์„ค์น˜ ์‹œ --save ์˜ต์…˜๊ณผ ํ•จ๊ป˜ installํ•˜๋ฉด ์ž๋™์œผ๋กœ dependencies์— ์ถ”๊ฐ€๋œ๋‹ค.
โžฐ scripts : CLI ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ช…๋ น์„ ๊ธฐ์ˆ ํ•œ๋‹ค. (npm script)
CLI ์—์„œ ์‹คํ–‰ํ•  ๋•Œ 'npm run ์Šคํฌ๋ฆฝํŠธ์ด๋ฆ„' ์œผ๋กœ ์‹คํ–‰

 

โœ”๏ธ package.json ์ƒ์„ฑํ•˜๊ธฐ

mkdir codestates
cd codestates

npm init 
# ์ƒˆ๋กœ์šด package.json ํŒŒ์ผ ์ƒ์„ฑ

Enter ๋ˆŒ๋Ÿฌ์„œ ๋‹ค์Œ ์ •๋ณด ์ž…๋ ฅ ๊ฐ€๋Šฅ
npm init -y ์ž…๋ ฅ ์‹œ ์œ„ ๊ณผ์ • ์ƒ๋žต ํ›„ package.json ์ƒ์„ฑ