๊ด€๋ฆฌ ๋ฉ”๋‰ด

Nevertheless

Node.js ๊ธฐ์ดˆ ๋ณธ๋ฌธ

๐Ÿ–ฅ๏ธWeb

Node.js ๊ธฐ์ดˆ

hxx_1 2025. 10. 22. 16:00

Node.js

: ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ํ™˜๊ฒฝ(Run time) = ๊ตฌ๋™๊ธฐ

: ์•„์ฃผ ๋‹จ์ˆœํ•œ ์ƒํ˜ธ์ž‘์šฉ๋งŒ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ์—ˆ๋˜ ์–ธ์–ด์ธ JavaScript ๋ฅผ ๋ฒ”์šฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ์‹คํ–‰ํ™˜๊ฒฝ, ์ฆ‰ ๋Ÿฐํƒ€์ž„ , ๋ฆฌ์•กํŠธ ๋˜ํ•œ node.js ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ๊ธฐ์ˆ 

 

npm

: Node package manager

: Node.js ์˜ ํ”„๋กœ์ ํŠธ ๋‹จ์œ„์ธ ํŒจํ‚ค์ง€๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๋„๊ตฌ

: ์ƒˆ๋กœ์šด ํŒจํ‚ค์ง€ ์ƒ์„ฑ / ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ ๋˜๋Š” ์‚ญ์ œ ๋“ฑ์˜ ์œ ์šฉํ•œ ๊ธฐ๋Šฅ ์ œ๊ณต

 

ํŒจํ‚ค์ง€

: node.js ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์˜ ๋‹จ์œ„

 

JavaScript ์˜ ๋ชจ๋“ˆ ์‹œ์Šคํ…œ

 

๋ชจ๋“ˆ ์‹œ์Šคํ…œ : *๋ชจ๋“ˆ์„ ๋‹ค๋ฃจ๋Š” ์‹œ์Šคํ…œ , ๋ชจ๋“ˆ์„ ์ƒ์„ฑํ•˜๊ณ  ๋ถˆ๋Ÿฌ์˜ค๊ณ , ์‚ฌ์šฉํ•˜๋Š” ๋“ฑ์˜ ๋ชจ๋“ˆ์„ ๋‹ค๋ฃจ๋Š” ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค. 

* ๊ธฐ๋Šฅ๋ณ„๋กœ ๋‚˜์–ด์ง„ ๊ฐ๊ฐ์˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ๋“ค์„ ๋ชจ๋“ˆ์ด๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ๋ถ€๋ฅธ๋‹ค. 

  • Common JS (CJS)

CJS ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘

  • ES Module (ESM)

ESM ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘

๋‘ ๊ฐ€์ง€ ๋ชจ๋“ˆ ์‹œ์Šคํ…œ์„ ๋™์‹œ์— ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. ์–ด๋–ค ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•  ๊ฒƒ์ธ์ง€ ์ •ํ•ด์•ผํ•œ๋‹ค.

 

Node.js ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉํ•˜๊ธฐ

 

- ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ : ํ”„๋กœ๊ทธ๋žจ์„ ๊ฐœ๋ฐœํ•  ๋•Œ ํ•„์š”ํ•œ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ๋“ค์„ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด ๋ชจ๋“ˆํ™” ํ•ด๋†“์€๊ฒƒ

ex) ๋‚ ์งœ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, ์ˆ˜ํ•™ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ .. 

 

โœ๐Ÿป ๋ฐฐ์šด ์ 

ํ•จ์ˆ˜๋ฅผ export ํ•  ๋•Œ ์ € default ๋ฅผ ๋ถ™์ด๋Š” ์˜๋ฏธ์— ๋Œ€ํ•ด์„œ ๊ถ๊ธˆํ–ˆ์—ˆ๋Š”๋ฐ, ํ•˜๋‚˜์˜ ๋ชจ๋“ˆ์„ ๋Œ€ํ‘œํ•œ๋‹ค๋Š” ์˜๋ฏธ๋ผ๊ณ  ํ•œ๋‹ค. ์œ„์˜ multiply ํ•จ์ˆ˜๋Š” math.js ๋ชจ๋“ˆ์„ ๋Œ€ํ‘œํ•˜๋Š” ๋‹จ ํ•˜๋‚˜์˜ ๊ธฐ๋ณธ๊ฐ’์ด ๋œ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ์„œ ๋‚ด๋ณด๋‚ด์ง„ multiply ์™€ ๊ฐ™์€ ํ•จ์ˆ˜๋Š”

  • import ๋กœ ๋ถˆ๋Ÿฌ์˜ฌ ๋•Œ ์ค‘๊ด„ํ˜ธ ์—†์ด ๋ถˆ๋Ÿฌ์˜ค๊ฒŒ ํ•ด์•ผํ•œ๋‹ค. 
  • ๊ทธ๋ฆฌ๊ณ  ํ•ด๋‹น ํ•จ์ˆ˜์˜ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•ด์„œ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค. 

์ถœ์ฒ˜

 

ํ•œ ์ž… ํฌ๊ธฐ๋กœ ์ž˜๋ผ ๋จน๋Š” ๋ฆฌ์•กํŠธ(React.js) : ๊ธฐ์ดˆ๋ถ€ํ„ฐ ์‹ค์ „๊นŒ์ง€