๐ HTTP method
HTTP์ ๋ด์๋ณด๋ด๋ ๋์ ๋ชฉ์
- POST : ์์ฑ (๋ฑ๋ก)
- GET : ์กฐํ
- PUT : ์์ - ๋ฎ์ด์ฐ๊ธฐ
- PATCH : ์์ - ๊ฐ์ด ๋ฐ๋๋ฉด ์์ ; ๋ถ๋ถ์์
- ๋ง์ดํ์ด์ง์์ ์ฐ๋ฝ์ฒ, ์ด๋ฉ์ผ, ์ง์ฃผ์, ์ด๋ฆ ๋ฑ์ ์์ ํ ์ ์๋๋ฐ ์ด๊ฑธ ํญ์ ๋์์ ๋ฐ๊พธ์ง ์๊ณ ํน์ ์์๋ง ๋ณ๊ฒฝ -> ๋ถ๋ถ ์์
- PATCH๋ ์กฐ๊ฑด์ด ์ข ๊น๋ค๋ก์ด ๋ฉด์ด ์์ด PUT๋ฅผ ์ฃผ๋ก ์ฌ์ฉ
- DELETE : ์ญ์
- HEAD : ์๋ต ํค๋๋ง ์กฐํ
- OPTIONS : ํน์ ๋ฆฌ์์ค์ ๋ํด ์ง์๋๋ HTTP method ์กฐํ
- CONNECT : ํ๋ก์ ์๋ฒ์์ ์ฐ๊ฒฐ์ ์ค์ ํ๋๋ฐ ์ฌ์ฉ
- TRACE : ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์์ฒญํ ๋ด์ฉ์ ๊ทธ๋๋ก ๋ฐํ๋ฐ๋๋ฐ ์ฌ์ฉ
๐ Node.js
์๋ฐ ์คํฌ๋ฆฝํธ๋ฅผ ์คํฌ๋ฆฝํธ ์ธ์ด ์ด์์ผ๋ก ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ์ญํ ์ ํ ์ ์๋๋ก ์ง์ํ๋ ํ๋ซํผ
๊ธฐ์กด ์๋ฐ์คํฌ๋ฆฝํธ๋ ์น ์์์๋ง ์ฌ์ฉ ๊ฐ๋ฅ
โจ ์ด๋ฅผ ์น ๋ฐ์์๋ ์ฌ์ฉํ ์ ์๋๋ก ํด์ฃผ๋ ๊ฒ์ด Node.js
๋ํ์ ์ธ ํน์ง 3๊ฐ์ง
- ์ฑ๊ธ ์ค๋ ๋
์ฃผ๋ฐฉ์ ์๋ฆฌ์ฌ๊ฐ ํ๋ช ์ด๋ผ ์ฃผ๋ฌธ์ด ๋ฐ๋ ค๋ค์ด์๋ ํผ์ ์ด๋ป๊ฒ๋ ํด๋ด์ผํจ - ์ด๋ฒคํธ ๊ธฐ๋ฐ
์ฃผ๋ฌธ์ด ์์ ๋๋ง ์๋ฆฌ ์ฆ, ์ฃผ๋ฌธ์ด ์์ผ๋ฉด ์ผ ์ํจ - ๋
ผ๋ธ๋กํน I/O
์๋ฆฌ๋ฅผ ์์ฐจ์ ์ด ์๋๋ผ ๋น๋ ์๊ฐ์ด ์๋ค๋ฉด ๋ค๋ฅธ ๊ฑฐ ๋จผ์ ์ฒ๋ฆฌ
ex. ๋ผ๋ฉด 1๊ฐ ์์ฑํ๋๋ฐ 10๋ถ, ๊ทธ ์ค 5๋ถ์ ๋ฌผ ๋์ด๋ ์๊ฐ
๋ณถ์๋ฐฅ ์์ฑํ๋๋ฐ 5๋ถ
⇒ ๋ผ๋ฉด ๋ฌผ ๋๋ ๋์ ๋ณถ์๋ฐฅ ์๋ฆฌํ ํ ๋ผ๋ฉด ๋ง๋ฌด๋ฆฌ
๐ก Node.js๋
ํ๋ฒ์ ํ๋์ ์์ฒญ๋ง ์ํํ ์ ์์ผ๋ฉฐ,
์ฌ๋ฌ ์์ฒญ์ด ๋ค์ด์ฌ ๊ฒฝ์ฐ ๋น๋๊ธฐ๋ก ์ํํ๊ณ
์์ฒญ์ด ์๋ ๊ฒฝ์ฐ์๋ง ๋์ํ๋ ํ๋ซํผ
โจ๏ธ ๋ ผ๋ธ๋กํน ์ค์ต
โ ๏ธ VSCode์ ์ฌ์๋ฒํผ์ด ์๋ณด์ธ๋ค๋ฉด?

ํ์ฅ ํ๋ก๊ทธ๋จ ์ค์นํ๋ฉด ์ฐ์ธก ์๋จ์ ์ฌ์ ๋ฒํผ์ด ๋ํ๋๋ค.
์ฌ์ฉํ ๋์๋ ๋ฐ๋์ ์์ฑํ ์ฝ๋๋ฅผ "์ ์ฅ" ํ ์ฌ์ฉํด์ผ ํ๋ค.
function first() {
console.log("์ฒซ ๋ฒ์งธ");
}
function second() {
console.log("๋ ๋ฒ์งธ");
}
function third() {
console.log("์ธ ๋ฒ์งธ");
}
์ด๋ฐ ํจ์๋ฅผ ์คํํด๋ณด์.
first();
second();
third();
์์๋๋ก ํธ์ถํ๋ฉด
์์๋๋ก ํธ์ถ๋๋ค.
๋ง์ฝ ์ค๊ฐ์ ๋น๋ ์๊ฐ์ด ์๊ธด๋ค๋ฉด ์ด๋จ๊น
setTimeout() ์ด๋ผ๋ ๋ด๋ถ ๋ชจ๋์ ์ฌ์ฉํด second๋ฅผ 2์ด ๋ค์ ์คํ๋๋๋ก ํด๋ณด์.
first();
setTimeout(second, 2000); // 2์ด ๋ค์ second ์คํ
third();
๊ทธ๋ผ 2์ด ๊ธฐ๋ค๋ฆฌ๋ ๋์ ๋ค์์๋ thrid()๋ฅผ ๋จผ์ ์คํํ๊ณ ๊ทธ ๋ค์์ second๋ฅผ ์คํํ๋ค.
์ด๊ฒ์ด ๋ฐ๋ก ๋ ผ๋ธ๋กํน์ด๋ค.
๐ ๋ชจ๋ (=๋ผ์ด๋ธ๋ฌ๋ฆฌ)
๋ผ์ด๋ธ๋ฌ๋ฆฌ = ๋์๊ด
๋์๊ด์๋ ์๋ง์ ์ฑ ๋ค์ด ์นดํ ๊ณ ๋ฆฌ๋ณ๋ก ๋ถ๋ฅ๋์ด์๊ณ
์ํ๋ ์นดํ ๊ณ ๋ฆฌ๋ฅผ ์ฐพ์ ์ํ๋ ์ฑ ์ ๊ณจ๋ผ ๋น๋ฆด ์ ์๋ค..
๋จ, ๊ณ ๋ฅด๊ธฐ ์ด๋ ค์ธ ์๋ ์๊ฐ์ด ๋ง์ด ์์๋ ์๋ ์๋ค.
๋ผ์ด๋ธ๋ฌ๋ฆฌ, ์ฆ ๋ชจ๋๋ ๋ง์ฐฌ๊ฐ์ง์ด๋ค.
๋ด๊ฐ ๋ง๋ ๊ฒ์ด ์๋๋ผ ์ ๋ฐฐ ๊ฐ๋ฐ์๊ฐ ๋ง๋ค์ด๋ ์ฝ๋ ๋ฉ์ด๋ฆฌ๋ฅผ ๋น๋ ค๋ค ์ฌ์ฉํ๋ ๊ฒ์ด๋ค.
๋ชจ๋์ ๊ฐ์ ธ๋ค ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์๋ ํฌ๊ฒ ๋๊ฐ์ง๊ฐ ์๋ค.
1. ๋ด์ฅ(ํ์ค) ๋ชจ๋ : ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณตํ๋ ๋ชจ๋
ex. setTimeout(), console.log()
2. ์ธ๋ถ ๋ชจ๋ : npm ์ฌ์ฉ
๊ทธ๋ผ ํ๋ ์์ํฌ๋ ๋ฌด์์ผ๊น?
๋ด๊ฐ ๋ง๋ค๊ณ ์ถ์ ์๋น์ค๋ฅผ ๊ตฌํํ๋๋ฐ ํ์ํ ๋ชจ๋ ์ผ์ ํ ์์์ ํ๋ ๊ฒ์ด ํ๋ ์์ํฌ๋ค.
์๋น์ค๋ฅผ ์์ฑํ๋๋ฐ ํ์ํด๋ณด์ด๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ(๋ชจ๋)์ ๋ฏธ๋ฆฌ ํ ์์ ๋ฃ์ด๋๋ค.
๊ณ ๋ก Node.js๋ ํ๋ ์์ํฌ๊ฐ ์๋๋ค!
ํ์ง๋ง Node.js ๋๋ถ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๋ชจ๋์ ์์ฑํ๊ณ ์ฌ์ฉํ ์ ์๊ฒ ๋์๋ค.
ํจ์๋ฅผ exportsํด์ ๋ค๋ฅธ ๊ณณ์์ ์ฌ์ฉํ๋ ๊ฒ์ด ๊ทธ ์์ด๋ค.
๐ NPM
์ธ๋ถ ๋ชจ๋์ ๋ด ํ๋ก์ ํธ์์ ์ฌ์ฉํ ์ ์๋๋ก ํด์ฃผ๋ ๊ฒ
npm์ด ์ ์ฅ์์ ์ธ๋ถ ๋ชจ๋์ ์ค์นํ๋ ๊ฒ์ ์ฐ๋ฆฌ๊ฐ ์ํ๋ ํ๋ก์ ํธ์ ์๋์ผ๋ก ํด์ค๋ค.
npm ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฐพ์๋ณผ ์ ์๋ ์ฌ์ดํธ
npm | Home
Bring the best of open source to you, your team, and your company Relied upon by more than 17 million developers worldwide, npm is committed to making JavaScript development elegant, productive, and safe. The free npm Registry has become the center of Java
www.npmjs.com
์ค์น : npm install ๋ชจ๋๋ช
- npm i ๋ชจ๋๋ช -g : -global(์ ์ญ)์ ์ฝ์๋ก, ์ปดํจํฐ์ ์๋ ๋ชจ๋ ํ๋ก์ ํธ์ ์ค์น (๋น์ถ์ฒ)
์ญ์ : npm uninstall ๋ชจ๋๋ช
npm install๋ฅผ ์งํํ๊ณ ๋๋ฉด package.json, package-lock.json๊ณผ ๊ฐ์ ํ์ผ๋ค์ด ์๋์ผ๋ก ์์ฑ๋๋ค.
- json : ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ฒด๊ฐ ์๊ธด ๋ชจ์
- package.json : despendencies๊ฐ ๋ญ๊ฐ ์๋์ง์ ๋ํ์ฌ ์์ฑ๋ ํ์ผ
- package-lock.json : ํ๋ก์ ํธ ์ด๋ฆ๋ถํฐ ๊ธฐํ ์์ธํ ๋ด์ฉ๋ค์ด ์์ฑ๋ ํ์ผ
โ๏ธ ์ฝ๋ฐฑ ํจ์
ํจ์์ ๋งค๊ฐ๋ณ์๋ก ๋ณ์ ๋๋ ๊ฐ์ ์ ๋ฌํ๋ ๊ฒ์ด ์๋๋ผ, ํจ์๋ฅผ ์ ๋ฌํ๋ ๊ฒ
โ๏ธ๋ธ๋ก์ค์ฝํ
๋ค๋ฅธ ๋ง๋ก ์ง์ญ๋ณ์( ↔ ์ ์ญ๋ณ์ ), ๊ดํธ ์์์๋ง ์ฌ์ฉํ๋จ ์๋ฏธ
{} ์์์ ์ ์ธ๋์๋ค๋ฉด {} ๋ฐ์์๋ ์ฌ์ฉํ ์ ์๋ค.
๋ํ์ ์ผ๋ก const์ let ์ด ์๋ค.
- const : ์ด๊ธฐํ ์ดํ ๊ฐ ๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅ
- let : ์ด๊ธฐํ ์ดํ ๊ฐ ๋ณ๊ฒฝ ๊ฐ๋ฅ
๋ค๋ฅธ ์ธ์ด๋ค์ ๋๋ถ๋ถ ๋ธ๋ก ์ค์ฝํ์ด๊ธฐ์ ์ฌ๋งํ๋ฉด var๋ณด๋จ const์ let์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค.
โ๏ธ ํ ํ๋ฆฟ ๋ฌธ์์ด
๋ฌธ์์ด์ ๋ณ์๋ฅผ ํจ๊ป ์ฌ์ฉํ ๋, ๋ณด๋ค ํธ๋ฆฌํ๊ฒ ์ฌ์ฉํ ์ ์๋๋ก ๋์์ฃผ๋ ๊ฒ
console.log(num1 + " X " + num2 + " = " + num3);
๊ธฐ์กด์๋ ๋ณ์์ ๋ฌธ์์ด์ + ๋ก ์ฐ๊ฒฐํด ์์ฑํ๋ค๋ฉด
console.log(`${num1} X ${num2} = ${num3}`);
๋ฐฑํฑ(``) ์์ ํจ๊ป ์์ฑํ๋ ๋ณ์๋ง ${ } ์์ ๋ฃ์์ผ๋ก์จ ๋์ฑ ์ง๊ด์ ์ด๊ณ ํธํ๊ฒ ์ฌ์ฉ ๊ฐ๋ฅํ๋ค.
'๐๏ธ DevCourse > Backend' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[TIL] Week 4 ๋ฐฑ์๋ ๊ธฐ์ด : API ์ค์ต _ params, querty, map (1) | 2025.02.13 |
---|---|
[TIL] Week 4 ๋ฐฑ์๋ ๊ธฐ์ด : Express (2) | 2025.02.12 |
[TIL] Week 3 ๋ฐฑ์๋ ๊ธฐ์ด (2) | 2025.02.07 |
[TIL] Week 3 ํ๋ก ํธ ํ๋ก์ ํธ์ ๋ฐฑ์๋ (1) | 2025.02.04 |
[TIL] Week 3 CSS์ Javascript (1) | 2025.02.03 |