node
-
- [React.js] Node.js ์ค์น๋ถํฐ ๋ฆฌ์กํธ ํ๋ก์ ํธ ํ ์คํธ๊น์ง ์ ๋ฆฌ
Node.js ์ค์น๋ถํฐ ๋ฆฌ์กํธ ํ๋ก์ ํธ ํ ์คํธ๊น์ง ์ ๋ฆฌ ๋ค์ด๊ฐ๋ฉฐ Node.js ์ค์น, NVM ์ค์น, ๋ฆฌ์กํธ ํ๋ก์ ํธ ์์ฑ ๋ฐ ํ ์คํธ๊น์ง์ ๊ณผ์ ์ ์ ๋ฆฌํด๋ณธ๋ค. ๋ฐฉ๋ฒ (1) Node.js ์ค์น ํ์ฌ ๋๋ ํ์์ ์ฌ์ฉํ๊ณ ์๋ ๋ฒ์ ์ Node.js๋ฅผ ์ค์นํ๋๋ก ํ๋ค. Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org (2) nvm ์ค์น NVM(Node Version Manager)์ Node.js์ ๋ฒ์ ์ ๊ด๋ฆฌํด์ฃผ๋ ํ๋ก๊ทธ๋จ์ด๋ค. @nvm-setup.exe@ ์ค์น ํ์ผ์ ๋ค์ด๋ก๋ ๋ฐ์ ์คํํ๋ค. Releases · coreybutler/nvm-windows A node.js version mana..
2024.02.05 -
- [Node.js] ๋ชจ๋ ์ค์น ์ ์์กด์ฑ ๋ฌธ์ ํด๊ฒฐํ๊ธฐ (npm-check-updates)
๋ชจ๋ ์ค์น ์ ์์กด์ฑ ๋ฌธ์ ํด๊ฒฐํ๊ธฐ (npm-check-updates) ๋ค์ด๊ฐ๋ฉฐ ์ธํฐ๋ท์ ๊ณต๊ฐ๋ ๋ ํฌ์งํ ๋ฆฌ๋ฅผ ๋ค์ด๋ก๋ ๋ฐ์์ ๋ณธ์ธ์ PC์์ ํด๋น ๋ชจ๋์ ์ค์นํ ๋, Node.js์ ๋ฒ์ ์ด ๋ฌ๋ผ ์์กด์ฑ ๋ฌธ์ (Dependency Problem)์ด ๋ฐ์ํ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์ด๋ฌํ ์์กด์ฑ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด @npm-check-updates@ ํจํค์ง๋ฅผ ์ฌ์ฉํ ์ ์๋ค. @npm-check-updates@ ํจํค์ง @package.json@ ํ์ผ ์์ ๋ช ์๋ ๋ชจ๋๋ค์ ๋ฒ์ ์ ๋ฌด์ํ๊ณ ์ต์ ๋ฒ์ ์ผ๋ก ์ ๋ฐ์ดํธํ์ฌ ์์กด์ฑ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ฃผ๋ ํจํค์ง์ด๋ค. ๋ฐฉ๋ฒ ์ธ๋ถ ๋ ํฌ์งํ ๋ฆฌ๋ฅผ ๋ค์ด ๋ฐ์์ @npm install@ ๋ช ๋ น์ ์ด์ฉํ์ฌ ํ์ํ ๋ชจ๋์ ์ค์นํ๊ธฐ ์ ์ ์๋์ ์์ ์ ์ํํด์ค๋ค. โ @npm-check-updates..
1 2023.11.27 -
- [Node.js] body-parser ํจํค์ง
body-parser ํจํค์ง ๋ค์ด๊ฐ๋ฉฐ Node.js์ @body-parser@ ํจํค์ง์ ๋ํด์ ์์๋ณด์. @body-parser@ ํจํค์ง ๊ฐ๋ HTTP ์์ฒญ์ ๋ณธ๋ฌธ(@body@) ๋ฐ์ดํฐ๋ฅผ ํ์ฑํ๊ณ , ์ด ๋ฐ์ดํฐ๋ฅผ JavaScript ๊ฐ์ฒด๋ก ๋ณํํด์ฃผ๋ ๋ฏธ๋ค์จ์ด(Middleware) ํจํค์ง ์ฃผ๋ก Express.js์ ํจ๊ป ์ฌ์ฉ๋๋ฉฐ, ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ๋, ์ด ๋ฐ์ดํฐ๋ฅผ ์๋ฒ์์ ์ฌ์ฉํ๊ธฐ ์ฝ๋๋ก ๊ฐ๊ณตํ๋ ๋ฐ ๋์์ ์ค๋ค. @body-parser@๋ ๋ค์ํ ๋ฐ์ดํฐ ํ์์ ํ์ฑํ ์ ์์ผ๋ฉฐ, ๊ฐ์ฅ ์ผ๋ฐ์ ์ผ๋ก JSON, URL-encoded ๋ฐ์ดํฐ, XML ๋ฐ ๊ธฐํ ๋ฐ์ดํฐ ํ์์ ์ฒ๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. ์ํํ ์ ์๋ ๊ธฐ๋ฅ JSON ๋ฐ์ดํฐ ํ์ฑ: ํด๋ผ์ด์ธํธ๊ฐ JSON ํ์์ ๋ฐ์ดํฐ๋ฅผ POST ๋๋ P..
2023.11.09 -
- [Node.js] ๋ ธ๋๋ชฌ(nodemon) ํจํค์ง
๋ ธ๋๋ชฌ(nodemon) ํจํค์ง ๋ค์ด๊ฐ๋ฉฐ Node.js์ ๋ ธ๋๋ชฌ(Nodemon) ํจํค์ง๋ฅผ ์ค์นํ๊ณ ์คํํด๋ณด์. ๋ ธ๋๋ชฌ(Nodemon) ๊ฐ๋ Node.js ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐ ๋ฐ ์คํํ๋ ๋ฐ ๋์์ ์ฃผ๋ ์ ์ฉํ ๋๊ตฌ ์ค ํ๋ ๊ฐ๋ฐ์๊ฐ ์ฝ๋๋ฅผ ๋ณ๊ฒฝํ๊ณ ์ ์ฅํ ํ ์๋ฒ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋์ผ๋ก ๋ค์ ์์ํ์ฌ ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ๋ ํจ์จ์ ์ผ๋ก ๋ง๋ค์ด์ค๋ค. ์ฃผ๋ก ๊ฐ๋ฐ ์ค์ธ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค์๊ฐ์ผ๋ก ๋ชจ๋ํฐ๋งํ๊ณ ๋ณ๊ฒฝ ์ฌํญ์ ๋ฐ์ํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. ํน์ง ์ฝ๋ ๋ณ๊ฒฝ ๊ฐ์ง ๋ ธ๋๋ชฌ์ ์ฝ๋ ๋ณ๊ฒฝ์ ์ค์๊ฐ์ผ๋ก ๊ฐ์งํ๊ณ ์ ์ฅํ ํ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋์ผ๋ก ๋ค์ ์์ํ๋ค. ์ฝ๋ ์์ ํ ์๋์ผ๋ก ์๋ฒ๋ฅผ ์ฌ์์ํ ํ์๊ฐ ์์ด ๊ฐ๋ฐ์์ ์์ฐ์ฑ์ ํฅ์์ํจ๋ค. ๋ค์ํ ํ์ผ ์ ํ ์ง์ ๋ ธ๋๋ชฌ์ JavaScript ํ์ผ ๋ฟ๋ง ์๋๋ผ HTML, ..
2023.11.08 -
- [Node.js] Express.js
Express.js ๋ค์ด๊ฐ๋ฉฐ @Express.js@์ ๋ํด ์์๋ณด์. Express.js ๊ฐ๋ Node.js์ ํต์ฌ ๋ชจ๋์ธ http์ Connect ์ปดํฌ๋ํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ํ๋ ์์ํฌ๋ก, ์น ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ API๋ฅผ ๊ฐ๋ฐํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. Express.js๋ Node.js์ ํจ๊ป ์ฌ์ฉ๋๋ฉฐ, ์น ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ API๋ฅผ ๋น ๋ฅด๊ฒ ๊ฐ๋ฐํ๊ณ ๊ด๋ฆฌํ๋ ๋ฐ ๋์์ ์ค๋ค. Node.js์ ์ฌ์ค์์ ํ์ค ์๋ฒ ํ๋ ์์ํฌ๋ก ๋ถ๋ฆฌ๊ณ ์๋ค. 2010๋ TJ Holowaychuk์ ์ํด ๊ฐ๋ฐ๋์๋ค. ๊ฐ๋จํ ์ต์คํ๋ ์ค(Express)๋ผ๊ณ ๋ถ๋ฅธ๋ค. MIT ํ๊ฐ์๋ก ๋ผ์ด์ ์ค๋๋ ์์ -์คํ ์์ค ์ํํธ์จ์ด๋ก ์ถ์๋์๋ค. ์ต์คํ๋ ์ค๋ ๋ชฝ๊ณ DB ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํํธ์จ์ด, AngularJS ํ๋ก ํธ์๋ ํ๋ ์์ํฌ์ ํจ๊ป M..
2023.11.08 -
- [Node.js] URL QR ์ฝ๋ ์์ฑ๊ธฐ ๋ง๋ค๊ธฐ
URL QR ์ฝ๋ ์์ฑ๊ธฐ ๋ง๋ค๊ธฐ ๋ค์ด๊ฐ๋ฉฐ Node.js๋ฅผ ์ด์ฉํ์ฌ ๊ฐ๋จํ๊ฒ URL์ ์ ๋ ฅํ๋ฉด ํด๋น URL์ QR ์ฝ๋๋ฅผ ์์ฑํด์ฃผ๋ ํ๋ก๊ทธ๋จ์ ๋ง๋ค์ด๋ณด์. ๋ฐฉ๋ฒ ํ์ํ ๋ชจ๋ ์ค์น ๋ค์ ๋ช ๋ น์ ์คํํ์ฌ @npm@์ ์ด์ฉํ์ฌ ์ฌ์ฉ์์ ์ ๋ ฅ์ ๋ฐ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ @inquirer@ ๋ชจ๋๊ณผ QR ์ด๋ฏธ์ง๋ฅผ ์์ฑํด์ฃผ๋ @qr-image@ ๋ชจ๋์ ์ค์นํด์ค๋ค. > npm install inquirer qr-image ์ฝ๋ ์์ฑํ๊ธฐ import inquirer from "inquirer"; import qr from "qr-image"; import fs from "fs"; inquirer .prompt([{ message: "Type in your URL: ", name: "URL", }]) .then((answers..
2023.11.07 -
- [Node.js] ๋ชจ๋ ๋ถ๋ฌ์ค๋ ๋ฐฉ์ (require, import)
Node.js์์ ๋ชจ๋ ๋ถ๋ฌ์ค๋ ๋ฐฉ์ (require, import) ๋ค์ด๊ฐ๋ฉฐ Node.js์์ ๋ชจ๋(Module)์ ๋ถ๋ฌ์ค๋ ๋ฐฉ์์ ํฌ๊ฒ 2๊ฐ์ง๊ฐ ์๋ค. CommonJS ์คํ์ผ๋ก ๋ถ๋ฌ์ค๋ @require@ ๋ฐฉ์๊ณผ ES6 ๋ชจ๋ ์คํ์ผ๋ก ๋ถ๋ฌ์ค๋ @import@ ๋ฐฉ์ 2๊ฐ์ง๊ฐ ์๋ค. ์ด ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์ฐจ์ด์ ์ ๋ํด ์์๋ณด์. Node.js์์ require๊ณผ import์ ์ฐจ์ด์ ? require require๋ Node.js์ ๊ธฐ๋ณธ ๋ชจ๋ ์์คํ ์์ ์ฌ์ฉ๋๋ ๋ฐฉ๋ฒ์ด๋ค. CommonJS ์คํ์ผ๋ก ๋ชจ๋์ ๊ฐ์ ธ์จ๋ค. // ํ์ผ ์์คํ ๋ชจ๋ ๊ฐ์ ธ์ค๊ธฐ const fs = require('fs'); // ์ฌ์ฉ์ ์ ์ ๋ชจ๋ ๊ฐ์ ธ์ค๊ธฐ (์๋ ๊ฒฝ๋ก ์ฌ์ฉ) const math = require('./math'); requi..
2023.11.07 -
- [TypeScript] ํ์ ์คํฌ๋ฆฝํธ ํ๋ก์ ํธ ๋ง๋ค๊ธฐ
ํ์ ์คํฌ๋ฆฝํธ ํ๋ก์ ํธ ๋ง๋ค๊ธฐ๋ค์ด๊ฐ๋ฉฐํ์ ์คํฌ๋ฆฝํธ(TypeScript) ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด๋ณด์. ํ์ ์คํฌ๋ฆฝํธ ํ๋ก์ ํธํ์ ์คํฌ๋ฆฝํธ ๊ฐ๋ฐ์ Node.js ํ๋ก์ ํธ๋ฅผ ๋ง๋ ๋ค์, ๊ฐ๋ฐ ์ธ์ด๋ฅผ ํ์ ์คํฌ๋ฆฝํธ(TypeScript)๋ก ์ค์ ํ๋ ๋ฐฉ์์ผ๋ก ์งํํ๋ค.Node.js ํ๋ก์ ํธ๋ ๋๋ ํฐ๋ฆฌ๋ฅผ ํ๋ ๋ง๋ค๊ณ ์ฌ๊ธฐ์ @package.json@์ด๋ผ๋ ์ด๋ฆ์ ํ์ผ์ ๋ง๋๋ ๊ฒ์ผ๋ก ์์ํ๋ค.๋ณดํต @package.json@ ํ์ผ์ ํฐ๋ฏธ๋์ @npm init@ ๋ช ๋ น์ ์คํํด ์์ฑํ๋ค.> mkdir study> cd study> npm init --yWrote to C:\Users\devastra\Desktop\TypeScript_Study\ch02-01\package.json:{ "name": "study", "version":..
2023.10.17 -
- [์ด์ฐ ์ํ] ๊ทธ๋ํ์ ๊ฐ๋
๊ทธ๋ํ์ ๊ฐ๋ ์ ๊ณผ ์ ์ ์ด์ฉํด ๊ฐ๋ , ๊ตฌ์กฐ ๋๋ ๊ณผ์ ๋ฑ์ ์ดํดํ๋ ๋ฐ ํ์ํ ์ฃผ์ ์์ ๊ฐ์ ๊ด๊ณ, ๊ฑฐ๋ฆฌ, ๋น์ฉ ๋ฑ์ ์๊ฐ์ ์ผ๋ก ํํํ ๋๊ตฌ๋ฅผ ๊ทธ๋ํ(Graph)๋ผ๊ณ ํ๋ค. ๊ทธ๋ํ๋ ๊ธ์ด๋ ์์์ผ๋ก๋ ๋ณต์กํ๊ณ ์ด๋ ต๊ฒ ํํ๋๋ ๊ฒ์ ๊ทธ๋ฆผ์ผ๋ก ํํํ๊ธฐ ๋๋ฌธ์ ์ปดํจํฐ ์์คํ ์ ํ๋ก๋ ๋คํธ์ํฌ ์ค๊ณ๋ ๊ตฌ์กฐ, ํ๋ก๊ทธ๋จ์ ์๊ณ ๋ฆฌ์ฆ, ์ธ๊ณต์ง๋ฅ์ ์ง์ ์ ๋ณด์ ํ์ ๊ณผ์ ๋ฐ ๋ด์ฉ ๋ฑ์ ํํํ๋ ๋ฐ ํจ์จ์ ์ด๊ณ ํจ๊ณผ์ ์ผ๋ก ํ์ฉ๋๋ค. ๊ทธ๋ํ๋ ์ ์ ๊ณผ ๋ณ์ผ๋ก ํํ๋๊ธฐ ๋๋ฌธ์ ์ ์ ์ ๋ํ ์ ๋ณด์ ๋ณ์ ๋ํ ์ ๋ณด๋ฅผ ์ ์ํจ์ผ๋ก์จ ๊ทธ๋ํ๋ฅผ ์ ์ํ๊ณ ํํํ๋ค. ๊ทธ๋ํ๋ ๋ณดํต ๊ทธ๋ฆผ ํํ๋ก ํํํ์ง๋ง, ์งํฉ ํํ๊ณผ ๊ฐ์ ์ํ์ ๊ธฐํธ๋ก ํํํ ์๋ ์๋ค. ๊ทธ๋ํ์ ์ ์์ ํํ ๊ทธ๋ํ(Graph : $G = (V, \; E)$ ) ๊ณต์งํฉ์ด..
2022.11.25