๐ | WEB DEV115 [NodeJS+Express] 4. MongoDB ํ์ฌํด์ฃผ๊ธฐ ์ง๊ธ๊น์ง ์ธํ ํ ์๋ฒ์ DB๋ฅผ ๋ฌ์๋ณด์! 1. DB ํบ์๋ณด๊ธฐ 0) DB๊ฐ ํ์ํ ์ด์ ์น ์๋น์ค๋ฅผ ์ ๊ณตํ๊ธฐ ์ํด์ ์ค์ํ ๊ฒ ์ค ํ๋๋ ์ฌ์ฉ์๋ค์ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๋ ๊ฒ์ด๋ค. ์ด๋ฅผ ์ํด์ ์ฌ์ฉํ๋ ๊ฒ์ด DataBase(DB)์ด๋ค! ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ด์ฉํด ๋น ๋ฅธ ๋ฐ์ดํฐ์ ์ ์ถ๋ ฅ๊ณผ ๋์ฉ๋ ๋ณด๊ด์ ํ ์ ์๋ค. 1) DB์ ์ข ๋ฅ DB์ ์ข ๋ฅ์๋ ๊ณ์ธตํ, ๋คํธ์ํฌํ, ๊ด๊ณํ, ๊ฐ์ฒด์งํฅ, ๋น๊ด๊ณํ์ด ์๋ค. ์ด์ค ์ต๊ทผ ๋ง์ด ์ฌ์ฉํ๋ ๊ฒ์ ๊ด๊ณํ๊ณผ ๋น๊ด๊ณํ์ด๋ค. ์ด ๋์ ๋ํด ๊ฐ๋จํ ์์๋ณด์. - ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฝ๊ฒ ์ด๊ฒ์ ์ค๋ช ํ๋ฉด ์์ ๊ณผ ๋น์ทํ๋ค. ํ ์ด๋ธ์ด ์กด์ฌํ๊ณ , ๋ฐ์ดํฐ๋ฅผ ํ ํ์ฉ ์ฐจ๋ก๋ก ๋ณด๊ดํ๋ค. ์ด๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ DBMS(๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์์คํ )๋ฅผ ์ค์นํด์ผํ๋ค. ex) MySQL, Oracle, SQL.. 2023. 9. 24. [NodeJS+Express] 3.์ ์ ํ์ผ ๋ฃ์ด์ฃผ๊ธฐ (cssํ์ผ ๋ฑ๋ก) & Bootstrap ์ด์ฉํ๊ธฐ ์ด์ ์น์ฌ์ดํธ๋ฅผ ๋์์ธ ํด๋ณด์. 1. ์ ์ ํ์ผ ์ฝ์ ํ๊ธฐ 1) css ํ์ผ ์์ฑํ๊ธฐ css ํ์ผ๊ณผ ๊ฐ์ ์ ์ ํ์ผ์ ๋ณดํต public ๋๋ ํ ๋ฆฌ์์ ๊ด๋ฆฌํ๋ค. ๋ฐ๋ผ์ ์์ฒ๋ผ public/main.css ๋ฅผ ์์ฑํด์ค๋ค. 2) public ๋๋ ํ ๋ฆฌ๋ฅผ ์๋ฒ์ ๋ฑ๋กํ๊ธฐ app.use(express.static(__dirname + '/public')) public ํด๋์ ์๋ ํ์ผ๋ค์ ์๋ฒ์์ ์ฌ์ฉํ ์ ์๋๋ก ์๋ฒ์ ๋๋ ํ ๋ฆฌ๋ฅผ ๋ฑ๋กํด์ค๋ค. (์คํ์ฃผ์) 3) htmlํ์ผ์ ๋ฃ์ด์ฃผ๊ธฐ html ํ์ผ์ header์ ์ ํ๊ทธ๋ฅผ ์ฝ์ ํด์ฃผ๋ฉด ๋๋ค. 4) ํ์ธํด๋ณด๊ธฐ /* main.css */ .square{ width: 100px; height: 100px; background: #4cb1ff; } 2. Bootstrap ์ด.. 2023. 9. 23. [NodeJS+Express] nodemon์ผ๋ก ์๋ํํ๊ธฐ ์ง๊ธ๊ป ์๋์ ์ฝ๋์ ๊ฐ์ด node server.js ์ด ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๊ณ ์๋ฒ๋ฅผ ์คํํ ๋ ๊ท์ฐฎ์ ์ ์ ํ์ผ์ ์์ ํ ๋ค ์ ์ฉ์ ํ๊ธฐ ์ํด์ ctrl+c๋ก ์คํ์ ์ข ๋ฃํ๊ณ ๋ค์ ์ฌ์์์ ํด์ผํ๋ค๋ ๊ฒ์ด์๋ค. ์ด๋ฅผ ํด๊ฒฐํด์ฃผ๋ ์์ฃผ ์ฐฉํ ์น๊ตฌ๊ฐ ์๋ค! 1. nodemon ์ค์นํ๊ธฐ npm install -g nodemon ์ ๋ช ๋ น์ด๋ก ์ค์นํ๋ค๋ฉด ์ ์ ์ฉ๋๋์ง ํ์ธํด๋ณด์. 2. ํ์ธํ๊ธฐ ์๋ฒ๋ฅผ ์คํํด๋ณด์. nodemon server.js ์ด์ server.js๋ฅผ ์์ ํด๋ณด์! app.get('/news', (request, response) => { response.send('์ค๋์ ๋ด์ค...') }) ์ ์ฝ๋๋ฅผ ์๋ก ์ถ๊ฐํด์ค๋ค ์ ์ฅํ๋ฉด ์ด๋ ๊ฒ ์๋์ผ๋ก ์ฌ์์ ํด์ฃผ๋ ๊ฒ์ ์ ์ ์๋ค. htmlํ์ผ๋ ์์ ํด๋ณด๋ฉด.. 2023. 9. 23. [NodeJS+Express] 2.์๋ก์ด ํ์ด์ง ๋ง๋ค๊ธฐ //server.js const express = require('express') const app = express() //PORT ์ด๊ธฐ app.listen(8080, ()=>{ console.log('http://localhost:8080 ์์ ์๋ฒ ์คํ์ค!'); }) //root์์ GET์์ฒญ(์ ์)์ ๋ ๋๋งํ ๋ด์ฉ app.get('/', (req, res)=>{ res.send("HELLO!!"); }) ์ ๋ฒ ํฌ์คํธ์์ ๊ฐ๋จํ๊ฒ ์๋ฒ๋ฅผ ๋ง๋ค์ด๋ณด์๋ค. ๋จ ํ๊ฐ์ ํ์ด์ง๋ง ์ ์ํ์๋๋ฐ ์ฌ๋ฌ ํ์ด์ง๋ฅผ ๋ง๋ค๊ณ ์ถ๋ค๋ฉด ์ด๋ป๊ฒ ํด์ผํ ๊น? 1. ์๋ก์ด ํ์ด์ง ๋ง๋๋ ค๋ฉด? ํ์ด์ง๋ฅผ ์ด๋ป๊ฒ ๋ง๋ค๊น? ์ฐ๋ฆฌ๋ ๋ธ๋ผ์ฐ์ ๋ฅผ ์ด๊ณ ์ฌ์ดํธ์ ์ ์ํ ๋ URL์ ์ด์ฉํ๋ค. ์ด์ ๋ํด์ ๊ฐ๋จํ๊ฒ ์ดํด๋ณด์. 1) URL URL์ .. 2023. 9. 23. [NodeJS+Express] 1. NodeJS, Express ์ธํ ์ฌ์ ์ ํ์ํ ๊ฒ๋ค - node LTS ๋ฒ์ , ์ฝ๋์๋ํฐ ๋ฑ - ๊ฐ๋จํ Express๋ฅผ ์ด์ฉํ๋ NodeJS ์๋ฒ ์ธํ ์์ 1. ์์ ํ ๋๋ ํ ๋ฆฌ ์์ฑ ํ ํด๋น ๊ฒฝ๋ก ์ ์ 2. js ํ์ผ ์์ฑ ex) server.js 3. ํด๋น ๊ฒฝ๋ก์์ ํฐ๋ฏธ๋ ์คํ ํ package.json ํ์ผ ์์ฑ npm init -y package.json ํ์ผ์ ์์ฑํด์ฃผ๋ ๋ช ๋ น์ด์ด๋ค. ์ด๋ -y ์ต์ ์ default๊ฐ์ผ๋ก ์ค์ ๋ ํ์ผ์ ๋ง๋ค๊ฒ ๋ค๋ ๋ป์ด๋ค. 4. express ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น npm install express express๋ฅผ ์ด์ฉํ์ฌ ์๋ฒ๋ฅผ ๋ง๋ค์ด๋ณด์! 5. ์๋ฒ ์ฝ๋ ์์ฑ const express = require('express') const app = express() //PORT ์ด๊ธฐ app.listen(.. 2023. 9. 22. [NodeJS] 2. ๋ ธ๋์ ํน์ฑ ๋ ธ๋์ 4๊ฐ์ง ํน์ฑ์ ๋ํด์ ์์๋ณด์! 1. ์ด๋ฒคํธ ๊ธฐ๋ฐ Node.JS๋ ์ด๋ฒคํธ ๊ธฐ๋ฐ์ด๋ค. ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ๋ ์ฌ์ ์ ์ง์ ํด๋์ ์์ ์ ์ํํ๋ค. - ์ด๋ฒคํธ ์์ : ํด๋ฆญ, ๋ง์ฐ์ค์ค๋ฒ, ์คํฌ๋กค, get, post ๋ฑ ์ด๋ ์ด ์ด๋ฒคํธ๋ฅผ ๋ฑ๋กํ๋ ํจ์๊ฐ ์ด๋ฒคํธ ๋ฆฌ์ค๋์ด๋ค. ๋ํ ์ด๋ฒคํธ ๋ฆฌ์ค๋์์ ์ด๋ฒคํธ๋ฅผ ๊ฐ์งํ ๊ฒฝ์ฐ ์คํ๋ ํจ์๊ฐ ์ฝ๋ฐฑ ํจ์์ด๋ค. [์ด๋ฒคํธ] 1) ์ด๋ฒคํธ ๋ฆฌ์ค๋์ ์ฝ๋ฐฑ ํจ์ ๋ฑ๋ก 2) ์์คํ ์์ ์ด๋ฒคํธ ๋ฐ์ -> ๋ฆฌ์ค๋์์ ๊ฐ์ง 3) ๋ฑ๋ก๋ ์ฝ๋ฐฑ ํจ์ ํธ์ถ ์ฌ์ค ์ด ๊ฐ๋ ์ ๊ฑฐ์ ๋ชจ๋ ํ๋ก๊ทธ๋จ์ ๋์์๋ฆฌ์ ์ ์ฉ๋๋ ๊ฐ๋ ์ด๋ค. 2. ๋ ผ๋ธ๋กํน I/O NodeJS๋ ๋ธ๋กํน์ด๋ฉด์ ๋๊ธฐ / ๋ ผ๋ธ๋กํน์ด๋ฉด์ ๋น๋๊ธฐ ์ด๋ค. (์ฐ์ , ์ด๋ ๊ฒ ๋์ฉ ์ง์ง์ด์ ์๊ณ ์์.) - ๋๊ธฐ : ์ฝ๋๊ฐ ์์๋๋ก ๋์ - ๋น๋.. 2023. 9. 17. [NodeJS] 1. ๋ ธ๋์ ์ ์ NodeJS์ ๋ํด์ ์์๋ณด์! 1. ์ ์ ๊ณต์ ํํ์ด์ง์์ ์ ์ํ๋ ๊ฒ์ ํฌ๋กฌV8 JS์์ง์ผ๋ก ๋น๋๋ JS ๋ฐํ์ ์ด๋ค. (๋ฐํ์ = ์คํ๊ธฐ / ์ฆ, nodeJS๋ JS ์คํ๊ธฐ) - NodeJS๊ฐ ์์์ ๋ JS๋ ์ด๋ป๊ฒ ์คํ์ด ๋์์๊น? ์ ํ์์ผ๋ก html ์์ ๋ฃ์ด์ผํ๋ค. (์คํฌ๋ฆฝํธ์ ์ข ์๋จ!) ๋ฐ๋ผ์ ๊ทธ ์๋๊ฐ ๋๋ฆด ์ ๋ฐ์ ์์๋ค. ํ์ง๋ง ํฌ๋กฌ ๊ธฐ๋ฐ์ NodeJs๊ฐ ๋ฑ์ฅํ ์ดํ ๋น์ ๊ธฐ์ค ๊ต์ฅํ ๋น ๋ฅธ ์๋๋ก ์คํ์ด ๊ฐ๋ฅํด์ง๊ฒ ๋์๋ค. - ๋ ธ๋๋ ์๋ฒ์ธ๊ฐ? ์๋ฐํ๋ ํ๋ฆฐ ๋ง์ด์ง๋ง NodeJS๋ก ์๋ฒ์ญํ ์ ์คํํ ์ ์๋ค. JS (์ธ์ด) / NodeJS (๋ฐํ์) 2. ๋ฐํ์ ๋ฐํ์์ด๋ ํน์ ์ธ์ด๋ก ๋ง๋ ํ๋ก๊ทธ๋จ๋ค์ ์คํํ ์ ์๊ฒ ํด์ฃผ๋ ๊ฐ์ ๋จธ์ ์ ๋งํ๋ค. JS์ NodeJS์ธ ๋ค๋ฅธ ๋ฐํ์ ์.. 2023. 9. 15. JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ (34)_ prototype (ํน์ง ๋ฐ constructor์์ ์ฐจ์ด) JS์ prototype์ ๋ํด์ ์์๋ณด์. 0. ์์(inheritance) ๊ฐ์ฒด์งํฅ์ ๊ฐ๋ ์ค ํ๋์ธ ์์์ ๊ฐ๋จํ ํํํ๋ฉด ๋ถ๋ชจ ๊ฐ์ฒด์ ์์ฑ์ ์์ ๊ฐ์ฒด๊ฐ ๋ฌผ๋ ค๋ฐ๋ ๊ฒ์ ๋งํ๋ค. JS์์ ์ด๊ฒ์ ๊ตฌํํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ด ๋ช๊ฐ์ง ์๋๋ฐ ์ฒซ๋ฒ์งธ๋ ์ ๋ฒ์๊ฐ์ ๋ค๋ฃจ์๋ constructor ๋ฌธ๋ฒ์ด๋ค. 2023.08.08 - [๐ | WEB DEV/Vanilla JS] - JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ (33)_ constructor ๋ฌธ๋ฒ ๊ทธ๋ฆฌ๊ณ ๋๋ฒ์งธ ๋ฐฉ๋ฒ์ด prototype์ด๋ค. 1. prototype ๋ชจ๋ ์์ฑ์ ํจ์๋ค์ prototype์ ๋ด์ฅํ๊ณ ์๋ค. function Student(name, code){ this.name = name; this.code = code; } console.log(Student.prot.. 2023. 8. 11. JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ (33)_ constructor ๋ฌธ๋ฒ JS์ Object๋ฅผ ์์ฑํ๋ constructor ๋ฌธ๋ฒ์ ๋ํด์ ์์๋ณด์. 0. Object์ ๋ณต์ฌ ๋ฌธ์ Object๋ Reference ๋ฐ์ดํฐ ํ์ ์ด๋ค. ๋ฐ๋ผ์ ๋ณต์ฌ๋ฅผ ํ ๋ ์๋์ ๊ฐ์ด ๋จ์ํ๊ฒ ์งํํด์๋ ์๋๋ค. ์๋ชป๋ ๊ฐ์ฒด ๋ณต์ฌ ์์ let obj1 = {name: "Kassid"}; let obj2 = obj1; ์ด๋ ๊ฒ ๋ณต์ฌ๋ฅผ ํ๊ฒ ๋๋ค๋ฉด ๊ฐ ์์ฒด์ ๋ณต์ฌ๊ฐ ์๋ ๋ ํผ๋ฐ์ค๋ฅผ ๋ณต์ฌํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ์์ ํ ๋ณต์ฌ๋ผ๊ณ ํ ์ ์๋ค. 1. constructor ๋ฌธ๋ฒ constructor๋ ์์ object๋ฅผ ์์ฑ๊ธฐ๊ณ๋ผ๊ณ ํ ์ ์๋ค. ์ด๋ฅผ ์ด์ฉํด ์์ ๋ณต์ฌ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ค. ์ด๋ฅผ ์ด์ฉํด์ ๋น์ทํ ๊ฐ์ฒด๋ฅผ ์์ฝ๊ฒ ์์ฐํด๋ผ ์ ์๋ค. ์ฌ์ฉ๋ฒ function ์์ฐ๊ธฐ๊ณ๋ช (){ this.์์ฑ = ...; .... 2023. 8. 8. ์ด์ 1 2 3 4 5 6 ยทยทยท 13 ๋ค์ ๋ฐ์ํ