
π ν¨νΈμ€μΊ νΌμ€ λ°λΈμΊ ν νλ‘ νΈμλ 5μ£Όμ°¨ νμ΅ λ΄μ©μ μ 리ν λ΄μ©μ λλ€.
π μλͺ»λ μ 보λ λκΈλ‘ μλ €μ£Όμλ©΄ μ λ§ κ°μ¬ν©λλ€!
Node.jsλ Chrome V8 μλ°μ€ν¬λ¦½νΈ μμ§μΌλ‘ λ§λ€μ΄μ§ μλ°μ€ν¬λ¦½νΈ μ€ννκ²½μ λλ€. μ°λ¦¬λ Node.jsλ₯Ό ν΅ν΄ λΈλΌμ°μ κ° μλ νκ²½μμλ μλ°μ€ν¬λ¦½νΈλ₯Ό μ€νν μ μμ΅λλ€!!
κΈ°λ³Έμ μΌλ‘ μΉλΈλΌμ°μ μμλ html, css, jsλ§ λμν μ μλ νκ²½μ
λλ€. νμ§λ§ μμνκ² 3κ°μ§ νμΌλ‘ μμ
νκ²λλ©΄ κ°λ°νλ κ³Όμ μ΄ λΉν¨μ¨μ μΌ μ μμ΅λλ€. μ΄μ λμμ μ£Όλ μ¬λ¬κ°μ§ λͺ¨λμ μ€μΉν΄μ ν¨μ¨μ μΌλ‘ κ°λ°μ μ§νν μ μμ΅λλ€.
νμ§λ§ μ΄λ¬ν λͺ¨λλ€μ λΈλΌμ°μ νκ²½μμ μ§μ μ¬μ©ν μ μμΌλ―λ‘, Node.js νκ²½μμ λμμ λ°μ κ°λ°μ μ§ννκ³ , μΆν λΈλΌμ°μ μμ λμν μ μλ ννλ‘ λ³ννλ μμ
μ μ§ννκ² λ©λλ€.
π μ€μΉ : https://nodejs.org/en
LTS(Long Term Suppoted) λ²μ - μ₯κΈ°μ μΌλ‘ μμ λκ³ μ λ’°λκ° λμ λ²μ
Node Version Manager, NVMμ Node.jsμ λ²μ μ μ½κ² μ νν μ μλλ‘ λμμ μ£Όλ κ΄λ¦¬ μμ€ν μ λλ€. μ΄λ₯Ό ν΅ν΄ μ¬λ¬ λ²μ μ μ€μΉν΄μ μ¬μ©ν μ μμ΅λλ€.π
π μ€μΉ : https://github.com/nvm-sh/nvm?tab=readme-ov-file#installing-and-updating
# μ€μΉλ node js νμΈκ°λ₯
nvm ls
# Node.js μ€μΉ
nvm install λ²μ
# μ¬μ©ν λ²μ μ€μ
nvm use λ²μ
# νΉμ λ²μ μμ
nvm uninstall λ²μ
# λ λ§μ λͺ
λ Ήμ΄ νμΈ
nvm --help
Node Package Manager, NPMμ μ μΈκ³μ κ°λ°μλ€μ΄ λ§λ ν¨ν€μ§(λͺ¨λ)λ€μ κ΄λ¦¬ν΄μ£Όλ μμ€ν μ λλ€.
npm init -y : NPM μΌλ‘ ν¨ν€μ§λ₯Ό κ΄λ¦¬ν μ μλ μνλ‘ λ³κ²½npm install ν¨ν€μ§λͺ
-D : ν¨ν€μ§λ₯Ό μ€μΉnode_modules ν΄λκ° μλμΌλ‘ μμ±λλ©΄μ ν΄λΉ ν¨ν€μ§μ μ€μΉλ λ€λ₯Έ ν¨ν€μ§ λ€μ΄ ν¨κ» μ€μΉ λ κ²μ νμΈ κ°λ₯-D μ΅μ
: κ°λ° νκ²½μμλ§ νμν ν¨ν€μ§λ₯Ό μ€μΉν λ λΆμΌμ μλ μ΅μ
μμ κ°λ°μ λμμ μ£Όλ μ¬λ¬ ν¨ν€μ§λ€μ μ€μ λΈλΌμ°μ νκ²½μμλ λμνμ§ μμΌλ―λ‘, λ³λμ λ³ν μμ μ΄ νμνλ€κ³ νμ΅λλ€. μ΄λ μ΄ λ³νμμ μ λμμ£Όλ κ²μ΄ λ²λ€λ¬μ μν μ λλ€.
λ²λ€(Bundle)μ νλ‘μ νΈ κ°λ°μ μ¬μ©ν μ¬λ¬ λͺ¨λ(ν¨ν€μ§)λ₯Ό νλλ‘ λ¬Άμ΄λ΄λ μμ μ μλ―Έν©λλ€.
μ€μ΅ μ npm install λͺ
λ Ήμ ν΅ν΄ νλ‘μ νΈμ parcel-bundlerλ₯Ό μ€μΉνκ³ parcel index.html λͺ
λ Ήμ΄λ₯Ό ν΅ν΄ κ°λ° μλ²λ₯Ό μ€νν μ μμ΅λλ€. νμ§λ§ ν°λ―Έλμμμλ parcel λͺ
λ Ήμ΄λ₯Ό λͺ¨λ₯΄κΈ° λλ¬Έμ package.jsonμ λ³λμ μ€μ μ ν΄μ€ λ€ μ¬μ©ν μ μμ΅λλ€.
λ³΄ν΅ μλμ κ°μ΄ μ€μ νλ©° ν°λ―Έλμμλ npm run dev λͺ
λ Ήμ ν΅ν΄ κ°λ° μλ²λ₯Ό μ€νν μ μμ΅λλ€.
κ·Έλ¦¬κ³ build μ€ν¬λ¦½νΈλ₯Ό μ€ννλ©΄ μΉ λΈλΌμ°μ μμ λμν μ μλ ννλ‘ λ³ννλ μμ
μ΄ μΌμ΄λκ² λ©λλ€.
{
"scripts" : {
"dev": "parcel index.html",
"build": "parcel build index.html"
}
}
κ°λ°μ νμν λͺ¨λλ€μ import λ°©μμ ν΅ν΄ μ¬μ©ν μ μμ΅λλ€. μ΄λ κ²½λ‘λ₯Ό λ°λ‘ μ§μ νμ§μμλ node_modules κ²½λ‘μμ μ°Ύκ²λλ―λ‘ λͺ¨λλͺ
λ§ μ μ΄μ£Όλ©΄ λ©λλ€.
Semantic Versioning, μ μμ λ²μ μ λ²μ μ μλ―Έλ₯Ό λΆμ¬ν κ²μ
λλ€.
node --version λͺ
λ Ήμ ν΅ν΄ λ²μ μ νμΈνλ©΄ μ«μ.μ«μ.μ«μ ννμΈ κ²μ νμΈν μ μλλ°, κ° μ«μλ μλ―Ένλ λ°κ° λ€μκ³Ό κ°μ΅λλ€.
λ§μ½ λ²μ μμ ^ κΈ°νΈκ° ν¨κ» νμλμ΄ μλ€λ©΄, μ΄λ Major λ²μ μμμ κ°μ₯ μ΅μ λ²μ μΌλ‘ μ
λ°μ΄νΈ ν μ μμμ μλ―Έν©λλ€. μλ₯Ό λ€μ΄ package.jsonμ ^12.4.1 λ‘ λͺ
μλ μνμμ ν¨ν€μ§ μ μ₯μμ 12.10.2 λ²μ μ΄ μΆμλ μνλΌλ©΄ npm install μ§ν μ μ€μΉλλ λ²μ μ 12.10.2κ° λ©λλ€.
npmμ ν΅ν΄ νλ‘μ νΈλ₯Ό κ΄λ¦¬ν λλ νλ‘μ νΈ λ΄λΆμμ μ¬μ©λλ μ¬λ¬ ν¨ν€μ§λ₯Ό μ€μΉνκ²λκ³ μ΄λ node_modulesμ μμΉνκ² λ©λλ€. μ΄λ₯Ό ν¬ν¨νμ¬ λ²λ€λ§ κ³Όμ μμ μκΈ°λ κ°μ’
κ²°κ³Όλ¬Όλ€μ λ°λ‘ λ²μ κ΄λ¦¬ λμμ΄ μλλ―λ‘ .gitignore νμΌμ ν΅ν΄ λ²μ κ΄λ¦¬ λμμ΄ μλμ μ§μ ν΄μ£Όλ κ²μ΄ μ€μν©λλ€!