TIL - 21.06.23 πŸ‘¨β€πŸ’» - Node.js

μ„±ν›ˆΒ·2021λ…„ 6μ›” 23일
0

TIL

λͺ©λ‘ 보기
10/59
post-thumbnail

TIL - 21.06.23 πŸ‘¨β€πŸ’»

μ˜€λŠ˜μ€ λ¦¬λˆ…μŠ€ 터미널과 νŒ¨ν‚€μ§€ λ§€λ‹ˆμ € 그리고 Node.js에 λŒ€ν•΄μ„œ ν•™μŠ΅ν–ˆλ‹€.

Node.js

Node.js의 μž₯점 :
Non-blocking I/O(Input & Output)와 단일 μŠ€λ ˆλ“œ 이벀트 루프λ₯Ό ν†΅ν•œ 높은 Request 처리 μ„±λŠ₯을 가지고 있음.

Node.jsλŠ” 데이터λ₯Ό μ‹€μ‹œκ°„ μ²˜λ¦¬ν•˜μ—¬ λ²ˆλ²ˆν•œ μž…μΆœλ ₯이 λ°œμƒν•˜λŠ” SPA(Single Page Application - ν•œ νŽ˜μ΄μ§€μ—μ„œ λ‹€λ₯Έ 정보λ₯Ό κ°€μ Έμ˜€κ±°λ‚˜ μƒν˜Έμž‘μš© ν•˜λŠ” νŽ˜μ΄μ§€)에 μ ν•©ν•˜λ‚˜, CPU μ‚¬μš©λ₯ μ΄ 높은 μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„  ꢌμž₯λ˜μ§€ μ•ŠλŠ”λ‹€.

λŸ°νƒ€μž„ - ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄κ°€ κ΅¬λ™λ˜λŠ” ν™˜κ²½. 즉, μ–΄λ–€ ν”„λ‘œκ·Έλž¨μ΄ μž‘λ™ν• λ•Œ κ·Έ ν”„λ‘œκ·Έλž¨μ΄ λ™μž‘ν•˜λŠ” κ³³.
κ³Όκ±°μ—” λΈŒλΌμš°μ €κ°€ μ£Ό μ˜€μ§€λ§Œ Node.js λ“±μ˜ λ“±μž₯으둜 JavaScript의 ν™œλ™ λ²”μœ„κ°€ κ΄‘λŒ€ν•΄μ‘Œλ‹€.

λ‹€λ₯Έ κ°œλ°œμžλ“€μ΄ λ§Œλ“  κ²€μ¦λœ μ½”λ“œλ₯Ό λͺ¨λ“ˆμ΄λΌκ³  ν•œλ‹€.
그리고 Node.jsμ—μ„œλŠ” 이λ₯Ό npmλͺ¨λ“ˆμ΄λΌν•˜λ©° 이 정보가 μžˆλŠ” 것이 package.json 이닀.

package.json

package.json은 이 ν”„λ‘œμ νŠΈμ— μ–΄λ–€ λͺ¨λ“ˆμ΄ ν•„μš”ν•œμ§€ μ•Œλ¦¬κΈ° μœ„ν•œ 파일이며 ν”„λ‘œμ νŠΈμ˜ μΉ΄νƒˆλ‘œκ·ΈλΌκ³  μ„€λͺ… ν•  수 μžˆλ‹€.
package.json은 μ‚¬μš©ν•œ λͺ¨λ“ˆμ˜ 정보λ₯Ό λ‹΄κ³  있으며, μ •λ³΄λ§Œ λ‹΄κ³  있고 μ‹€μ œ λͺ¨λ“ˆμ€ npm install λͺ…λ Ήμ–΄λ₯Ό μ‚¬μš©ν•˜λ©΄ μ‹€ν–‰ν•œ 디렉토리에 μƒμ„±λ˜λŠ” node_modules 에 μžˆλ‹€.

  • Node.jsλ₯Ό μ‚¬μš©ν•œ ν”„λ‘œμ νŠΈλ₯Ό 손볼땐 μš°μ„  npm install ν•˜μ—¬ package.json에 기둝된 λͺ¨λ“ˆλ“€λΆ€ν„° μ„€μΉ˜ν•˜μž.

devDependencies

μ˜€λ‘œμ§€ κ°œλ°œμ„ μœ„ν•΄ ν•„μš”ν•œ μ˜μ‘΄μ„± λͺ¨λ“ˆ(Dependency) 이닀.
npm install moduleName --save-dev 둜 λͺ¨λ“ˆμ„ μ„€μΉ˜ν•˜λ©΄ devDependencies ν•˜μœ„μ— μΆ”κ°€λœλ‹€.

dependencies

ν”„λ‘œμ νŠΈ 싀행을 μœ„ν•΄ ν•„μš”ν•œ λͺ¨λ“ˆ, 즉 μ‹€μ§ˆμ μΈ μ‹€ν–‰κ³Ό 관련이 μžˆλŠ” λͺ¨λ“ˆμ΄λ‹€.
npm install moduleName (--save) 둜 μ„€μΉ˜ν•˜λ©° λ’·λΆ€λΆ„μ˜ --saveλŠ” μƒλž΅κ°€λŠ₯ν•˜λ‹€.
유λͺ…ν•œ λͺ¨λ“ˆλ‘œλŠ” react, underscore 등이 μžˆλ‹€.

script

CLI(Command-line interface)μ—μ„œ μ‚¬μš©κ°€λŠ₯ν•œ λͺ…λ Ήμ–΄λ“€ λͺ¨μŒ.
npm run scriptName 으둜 μ‚¬μš©ν•œλ‹€.

GOOD πŸ˜‰

터미널을 쑰금 더 ν™œμš© ν•  수 있게 λ˜μ—ˆλ‹€.
Node.js에 μž…λ¬Έν–ˆλ‹€.

BAD πŸ˜₯

μ‹œκ°„ 듀인 것에 λΉ„ν•΄ ν•™μŠ΅ν•œ λŸ‰μ΄ 적은 것 κ°™λ‹€.
nano νŽΈμ§‘κΈ°λ„ λ°°μ› μ§€λ§Œ 영 μ‚¬μš©ν•˜κ³  싢지 μ•Šκ²Œ μƒκ²¨μ„œ vscodeλ₯Ό μ‚¬μš©ν–ˆλ‹€.

TO DO πŸ”₯

  • js.객체 곡뢀
  • js.λ°°μ—΄ 곡뢀
  • Node.js 곡뢀
  • λ…Έλ§ˆλ“œ 코더 유튜브 클둠코딩 해보기
  • Gitμ΄λž‘ μΉœν•΄μ§€κΈ°

Retrospect 🧐

μ˜€λŠ˜μ€ λ…Έλ“œμ— μž…λ¬Έν–ˆλ‹€.
μ†”μ§νžˆ μž…λ¬Έμ΄λΌμ„œ μ˜€λŠ˜μ€ λ§›λ§Œ λ΄€λŠ”λ° μ•„λ§ˆ μ˜€λŠ˜μ„ 기점으둜 곡뢀할 λŸ‰μ΄ ν™• λŠ˜μ–΄λ‚˜μ§€ μ•Šμ„κΉŒ μ‹Άλ‹€.

κΉƒν—ˆλΈŒ μž”λ”” μ±„μ›Œλ³΄λŠ” 것도 ν•œλ²ˆ 생각해봐야겠닀.
본인 레포 컀밋해도 μž”λ”” μ±„μ›Œμ§€λŠ” 쀄 μ•Œμ•˜λ”λ‹ˆ μ•„μ£Ό 그런 것은 μ•„λ‹Œ λ“― ν•˜λ‹€.
κΉƒμ΄λž‘ 쑰금 더 μΉœν•΄μ Έμ•Όκ² λ‹€.

배울 것은 많고 μ‹œκ°„μ€ 적은데 λ‚˜λŠ” 섀렁섀렁 κ³΅λΆ€ν•˜λ‹ˆ 이게 총체적 λ‚œκ΅­μ΄ μ•„λ‹κΉŒ μ‹Άμ–΄ μŠ¬ν”„λ‹€πŸ˜­

그리고 였늘 νŽ˜μ–΄λ‹˜μ΄ λ°”λ€Œμ—ˆλŠ”λ° μ•„μ£Ό μœ μΎŒν•œ λΆ„μ΄λž‘ νŽ˜μ–΄κ°€ λ§Ίμ–΄μ‘Œλ‹€.
짧게 짧게 ν•΄μ„œ μ•„μ‰½μ§€λ§Œ λ‹€μ–‘ν•œ 뢄듀을 λ§Œλ‚˜μ„œ 더 재밌고, μœ μ΅ν•œ λ“― ν•˜λ‹€.

Reference πŸ™‡

Codestates urClass
https://poiemaweb.com/

profile
μ–΄λ–»κ²Œ 이걸 ν’€μ–΄λ‚Ό 수 μžˆμ„κΉŒ

0개의 λŒ“κΈ€