[Node.js โ ๊ธฐ์ด ๊ฐ์ข] 9. Test ์ฝ๋ ์์ฑํ๊ธฐ(with Mocha, Chai)

Node.js์์ ํ
์คํธ ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฒ์ ์ฝ๋์ ์ ํ์ฑ, ์์ ์ฑ, ์ ์ง๋ณด์์ฑ์ ๋ณด์ฅํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ์ด๋ฅผ ํตํด ๊ฐ๋ฐ์๋ ์ฝ๋๊ฐ ์์๋๋ก ๋์ํ๋์ง ํ์ธํ๊ณ , ์ฝ๋ ๋ณ๊ฒฝ์ด ๊ธฐ์กด ๊ธฐ๋ฅ์ ์ํฅ์ ๋ฏธ์น์ง ์๋๋ก ํ ์ ์์ต๋๋ค. ํ
์คํธ๋ ์ํํธ์จ์ด ๊ฐ๋ฐ์ ํ์์ ์ธ ๋ถ๋ถ์ด๋ฉฐ, ๋ค์ํ ํ
์คํธ ํ๋ ์์ํฌ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ํจ์จ์ ์ผ๋ก ์์ฑํ ์ ์์ต๋๋ค. ์ด๋ฒ ํฌ์คํ
์์๋ Mocha์ Chai๋ฅผ ์ด์ฉํ ํ
์คํธ ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด๊ฒ ์ต๋๋ค.
Read more[Node.js โ ๊ธฐ์ด ๊ฐ์ข] 8. Websocket ์๊ฐ ๋ฐ ์ฌ์ฉํ๊ธฐ

WebSocket์ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ์ค์๊ฐ ์๋ฐฉํฅ ํต์ ์ ๊ฐ๋ฅํ๊ฒ ํ๋ ํ์ ์ ์ธ ํ๋กํ ์ฝ์
๋๋ค. ์ด ๋ธ๋ก๊ทธ ํฌ์คํ
์์๋ WebSocket์ ๊ฐ๋
, ๋์ ์๋ฆฌ, ๊ทธ๋ฆฌ๊ณ Node.js์ TypeScript๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฒ์ ํด๋ผ์ด์ธํธ์์ Websocket์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ค๋ฃน๋๋ค. Websocket ์ด๋? ๊ฐ์ WebSocket์ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ์๋ฐฉํฅ ํต์ ์ ๊ฐ๋ฅํ๊ฒ ํ๋ ๋คํธ์ํฌ ...
Read more[Node.js โ ๊ธฐ์ด ๊ฐ์ข] 7-2. ์ฌ์ฉ์ ์ธ์ฆํ๊ธฐ(Authentication) – (JWT ์ฌ์ฉ)

JWT(JSON Web Token)๋ ํ๋ ์น ์ ํ๋ฆฌ์ผ์ด์
์์ ์ฌ์ฉ์ ์ธ์ฆ ๋ฐ ์ ๋ณด ๊ตํ์ ์ํ ๊ฐ๋ ฅํ ๋๊ตฌ์
๋๋ค. ๋ณธ ํฌ์คํ
์์๋ JWT์ ๊ฐ๋
๊ณผ ๋์ ์๋ฆฌ๋ฅผ ์ดํดํ๊ณ , Node.js(Typescript & Express)๋ฅผ ์ฌ์ฉํ์ฌ ์ค์ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ์๊ฐํฉ๋๋ค. JWT๋ ์๋ฒ์ ํด๋ผ์ด์ธํธ ๊ฐ์ ์ ๋ณด๋ฅผ ์์ ํ๊ฒ ์ฃผ๊ณ ๋ฐ๊ธฐ ์ํ ์๋ช
๋ ํ ํฐ์ ์์ฑํ์ฌ, ...
Read more[Node.js โ ๊ธฐ์ด ๊ฐ์ข] 7-1. ์ฌ์ฉ์ ์ธ์ฆํ๊ธฐ(Authentication) – (Session & Cookie ์ฌ์ฉ)

์ฌ์ฉ์ ์ธ์ฆ์ ์์คํ
์ ์ ๊ทผํ๋ ์ฌ์ฉ์์ ์ ์์ ํ์ธํ๋ ๊ณผ์ ์
๋๋ค. ๋ณด์์ ์ค์ํ ์์๋ก, ๋ค์ํ ๋ฐฉ์์ผ๋ก ๊ตฌํ๋ ์ ์์ต๋๋ค. ์ฌ๊ธฐ์๋ ์ธ์
๊ณผ ์ฟ ํค๋ฅผ ์ด์ฉํ ์ธ์ฆ, ๊ทธ๋ฆฌ๊ณ JSON Web Token (JWT)์ ์ด์ฉํ ํ ํฐ ๊ธฐ๋ฐ ์ธ์ฆ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค. ์ธ์
(Session)์ ๊ณผ ์ฟ ํค(Cookie)๋ฅผ ์ด์ฉํ ์ธ์ฆ ๊ฐ์ ์ธ์
(Session)๊ณผ ์ฟ ํค(Cookie)๋ ...
Read more[Node.js โ ๊ธฐ์ด ๊ฐ์ข] 6. Database ์ฐ๋ํ๊ธฐ(Feat. MongoDB ์๊ฐ ๋ฐ ์ฐ๋)

๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ ํ๋ฆฌ์ผ์ด์
์ ํต์ฌ ๊ตฌ์ฑ ์์ ์ค ํ๋์
๋๋ค. ํนํ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ธ MongoDB๋ ์ ์ฐํ ์คํค๋ง์ ๋์ ์ฑ๋ฅ์ผ๋ก ๋ง์ ๊ฐ๋ฐ์๋ค์๊ฒ ์ฌ๋๋ฐ๊ณ ์์ต๋๋ค. ์ด๋ฒ ํฌ์คํ
์์๋ Node.js์์ Database๋ฅผ ์ฐ๋ํ๋ ๋ฐฉ๋ฒ์ ์๊ฐํ๋ ค๊ณ ํ๋๋ฐ, ๊ทธ์ค์์ ํนํ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ธ MongoDB๋ฅผ ์๊ฐํ๊ณ , Mongoose๋ฅผ ์ด์ฉํ์ฌ Node.js ์ ํ๋ฆฌ์ผ์ด์
์์ MongoDB์ ์ฐ๋ํ๋ ๋ฐฉ๋ฒ์ ...
Read more[Network] OSI 7 Layers ์ ๋ํด ์์๋ณด์.

๋คํธ์ํฌ(Network) ํต์ ์ ์ดํดํ๋ ๋ฐ ํ์์ ์ธ ๊ฐ๋
์ธ OSI 7๊ณ์ธต ๋ชจ๋ธ(OSI 7 Layers Model)์ ์ปดํจํฐ ๋คํธ์ํฌ ํ๋กํ ์ฝ์ ํ์ค์ ์ ์ํ๋ ๋ชจ๋ธ์
๋๋ค. ์ด ๋ชจ๋ธ์ ํต์ ์์คํ
์ 7๊ฐ์ ๊ณ์ธต์ผ๋ก ๋๋์ด ๊ฐ ๊ณ์ธต์ด ์ํํ๋ ์ญํ ์ ๋ช
ํํ ๊ตฌ๋ถํ๊ณ , ์ํธ ์ด์ฉ์ฑ์ ๋์ด๊ธฐ ์ํด ์ค๊ณ๋์์ต๋๋ค. ์ด๋ฒ ํฌ์คํ
์์๋ OSI 7๊ณ์ธต ...
Read more[Node.js โ ๊ธฐ์ด ๊ฐ์ข] 5-2. ๊ธฐ๋ณธ ์น ์๋ฒ ๊ตฌ์ถ(Middleware ํธ)

์ด๋ฒ ํฌ์คํ
์์๋ Node.js๋ก ๊ธฐ๋ณธ ์น ์๋ฒ๋ฅผ ๊ตฌ์ถํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด๊ฒ ์ต๋๋ค. ํนํ ์ด๋ฒ ํฌ์คํ
์์๋ Middleware์ ์ค์ ์ ์ผ๋ก ๋ค๋ฃจ๊ฒ ์ต๋๋ค. ์์ Routing ํฌ์คํ
([Node.js โ ๊ธฐ์ด ๊ฐ์ข] 5-1. ๊ธฐ๋ณธ ์น ์๋ฒ ๊ตฌ์ถ(Routing ํธ)) ์ญ์ ๋ฏธ๋ค์จ์ด(Middleware)๋ฅผ ์ฌ์ฉํ ๊ฒ์
๋๋ค. ๋ฏธ๋ค์จ์ด(Middleware) ์๊ฐ Middleware ๋? ๋ฏธ๋ค์จ์ด(Middleware)๋ ์น ์ ํ๋ฆฌ์ผ์ด์
์์ ์์ฒญ(request)๊ณผ ์๋ต(response) ...
Read more[Node.js โ ๊ธฐ์ด ๊ฐ์ข] 5-1. ๊ธฐ๋ณธ ์น ์๋ฒ ๊ตฌ์ถ(Routing ํธ)

์ด๋ฒ ํฌ์คํ
์์๋ Node.js๋ฅผ ์ด์ฉํด ๊ธฐ๋ณธ ์น ์๋ฒ๋ฅผ ๊ตฌ์ถํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด๊ฒ ์ต๋๋ค. ํนํ ๋ผ์ฐํ
(Routing)์ ์ค์ ์ ์ผ๋ก ๋ค๋ฃจ์ด, ๋ค์ํ URL ๊ฒฝ๋ก์ ๋ฐ๋ผ ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช
ํฉ๋๋ค. HTTP ๋ชจ๋๊ณผ Express ๋ชจ๋์ ์ฌ์ฉํ ์น ์๋ฒ ๊ตฌ์ถ ๊ณผ์ ์ ๋จ๊ณ๋ณ๋ก ์๊ฐํ๊ณ , TypeScript์ ํจ๊ป ์ฌ์ฉํ๋ ๊ธฐ๋ณธ์ ์ธ ๋ผ์ฐํ
์ค์ ๋ฐฉ๋ฒ์ ์์ ๋ก ์ ๊ณตํฉ๋๋ค. ๋ํ, URL ํ๋ผ๋ฏธํฐ ์ฒ๋ฆฌ ๋ฐ ์ ํจ์ฑ ๊ฒ์ฆ ๋ฐฉ๋ฒ์ ๋ค๋ฃจ๊ณ , ๋ผ์ฐํธ๋ฅผ ๋ชจ๋ํํ์ฌ ๊ด๋ฆฌํ๋ Routing Module์ ์ญํ ๊ณผ ๊ตฌํ ๋ฐฉ๋ฒ์ ๋ํด์๋ ์ค๋ช
ํฉ๋๋ค. ์ด๋ฅผ ํตํด ํจ์จ์ ์ด๊ณ ์ ์ง๋ณด์ํ๊ธฐ ์ฌ์ด ์น ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ๋ฐํ ์ ์์ต๋๋ค.
Read moreAI์ ์ ๋ ฅ๋(Power Shortage)์ ์๊ด๊ด๊ณ: ํํฉ๊ณผ ๋ฏธ๋ ์ ๋ง (feat. ๊ด๋ จ์ฃผ)

์ธ๊ณต์ง๋ฅ(AI)์ ๋ค์ํ ์ฐ์
์์ ํ์ ์ ์ฃผ๋ํ๊ณ ์์ผ๋ฉฐ, ๊ทธ ๊ณผ์ ์์ ์์ฒญ๋ ์ ๋ ฅ์ ์๋ชจํ๊ณ ์์ต๋๋ค. ๋ฅ๋ฌ๋ ๋ชจ๋ธ์ ํ์ต๊ณผ ์คํ์๋ ๊ณ ์ฑ๋ฅ ๊ทธ๋ํฝ ์นด๋(GPU)์ ๊ณ ์ฌ์ ์ปดํจํ
์ฅ์น๊ฐ ํ์ํ๋ฉฐ, ์ด๋ค์ ๋ง์ ์ ๋ ฅ์ ์๋นํฉ๋๋คโ ์ด๋ก ์ธํด AI ๊ธฐ์ ์ ํ์ฐ๊ณผ ํจ๊ป ์ ๋ ฅ ์๋น๋๋ ๊ธ๊ฒฉํ ์ฆ๊ฐํ๊ณ ์์ต๋๋ค. ์ ์ด๋ฐ ...
Read more[Node.js โ ๊ธฐ์ด ๊ฐ์ข] 4. Express Framework (์๊ฐ, ์ฌ์ฉ๋ฐฉ๋ฒ)

์น ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ๋ฐํ ๋, ๋น ๋ฅด๊ณ ํจ์จ์ ์ผ๋ก ์๋ฒ๋ฅผ ๊ตฌ์ฑํ๋ ๊ฒ์ ๋งค์ฐ ์ค์ํฉ๋๋ค. ์ด๋ ๋์์ด ๋๋ ๊ฒ์ด ๋ฐ๋ก Express ํ๋ ์์ํฌ์
๋๋ค. Express๋ Node.js ํ๊ฒฝ์์ ๋์ํ๋ ๊ฒฝ๋์ ์น ํ๋ ์์ํฌ๋ก, ๋จ์ํ๋ฉด์๋ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ด๋ฒ ํฌ์คํ
์์๋ Express์ ๊ฐ์์ ํน์ง, ๊ทธ๋ฆฌ๊ณ TypeScript๋ฅผ ํ์ฉํ์ฌ Express ํ๋ก์ ํธ๋ฅผ ์์ฑํ๊ณ ์ ํ๋ฆฌ์ผ์ด์
์ ์ด๊ธฐํํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์ธํ ์์๋ณด๊ฒ ์ต๋๋ค.
Read more








