본문 바로가기
728x90
반응형
SMALL

Do it! 공부단12

[Node.js] 노드제이에스 - CRUD 코드 작성 Do it! Node.js 프로그래밍 입문 8일차 입니다. DB모델에서 사용하는 함수 controllers/contactController.js 아래 코드 추가 const Contact = require("../models/contactModel") // DB모델 연결 create() DB에 새로운 도큐먼트를 생성합니다. Contact.create({name, email, phone}) find() 지정한 조건에 맞는 도큐먼트를 찾습니다. 조건을 따로 지정하지 않으면 모든 도큐먼트를 찾습니다. Contact.find() updateOne, updateMany updateOne는 조건에 맞는 첫 번째 도큐먼트만 업데이트하고 updateMany는 조건에 맞는 모든 도큐먼트를 업데이트합니다. Contact.u.. 2024. 2. 10.
[Node.js] 노드제이에스 - 컨트롤러 작성 Do it! Node.js 프로그래밍 입문 8일차 입니다. 디자인 아키텍처 코드를 읽기 쉽고 관리하기 편하도록 기능이나 역할에 따라 여러 파일로 나눈 뒤 연결해서 사용하자는 것을 디자인 아키텍처라고 합니다. MVC 패턴 Model, View, Controller을 합해서 MVC 패턴이라고 합니다. 이렇게 3개로 나눠서 코딩하면 실제 처리 로직과 데이터베이스, 인터페이스 부분이 서로 영향을 받지 않습니다. 영역 설명 모델 - 애플리케이션에서 처리할 대상 - 데이터베이스를 통해 자료를 저장하거나 검색, 수정하는 함수들이 모델에 해당 - 사용자에게 어떻게 보일지는 신경 쓰지 않고 처리할 대상에 집중 뷰 - 컨트롤러나 모델의 처리 결과를 시각적으로 보여줍니다. - 흔히 사이트나 애플리케이션에 표시되는 화면을 만.. 2024. 2. 10.
[Node.js] 노드제이에스 - CRUD를 위한 API 작성 Do it! Node.js 프로그래밍 입문 8일차 입니다. API와 애플리케이션 애플리케이션 특정 기능을 제공하는 프로그램입니다. 애플리케이션은 그 자체로 완전한 소프트웨어입니다. 웹 사이트 자체로 완성된 기능을 제공하는 것이 애플리케이션입니다. API란 API는 Application Programming Interface의 줄임말입니다. 애플리케이션 간에 자료를 주고받으면서 특정 기능을 실행합니다. API는 둘 이상의 컴퓨터 혹은 애플리케이션 간에 자료를 어떻게 주고받는지를 지정하는 역할을 합니다. RESTful API http 프로토콜은 클라이언트와 서버 사이에 자료를 주고받을 때 사용하는 규칙이라고 합니다. http 프로토콜을 활용해서 자료를 주고받으려면 약속된 구조가 필요한데 이것이 바로 REST.. 2024. 2. 10.
[Node.js] 노드제이에스 - 몽고DB Do it! Node.js 프로그래밍 입문 7일차 입니다. 데이터베이스 수 많은 자료들을 저장해서 정리하고 관리하는 방법이 필요한데 이때 사용하는 것이 데이터베이스 입니다. 데이터베이스에 새로운 자료를 추가하거나 데이터베이스에 있는 자료를 가져와 브라우저 창에 보여주는 것을 웹 개발이라고 할 수 있습니다. 데이터베이스의 종류 관계형 데이터베이스 : 저장할 자료의 구조를 행과 열로 구분해서 표 형태로 관리합니다. SQL언어를 사용합니다. NoSQL 데이터베이스 : NoSQL은 SQL을 사용하지 않는다는 의미입니다. NoSQL데이터베이스는 문서 형태로 저장합니다. NoSQL 데이터베이스의 장점 자료를 구조변경하기가 쉽습니다. 자료형식이 JSON이거나 JSON과 비슷한 형태여서 DB언어를 따로 공부하지 않아도.. 2024. 2. 9.
[Node.js] 노드제이에스 - 익스프레스 미들웨어 Do it! Node.js 프로그래밍 입문 공부단 6일차 입니다. 미들웨어란 요청과 응답의 중간에 있으면서 요청을 처리하거나 원하는 상태로 응답을 수정하는 함수를 미들웨어라고 합니다. 파싱 요청 안에 포함된 아이디와 비밀번호의 값을 애플리케이션에서 읽을 수 있는 형태로 변환하는 것을 파싱이라고 합니다. 미들웨어의 역할 속성 설명 요청 전처리 요청이 서버에 도착하기 전에 실행하는 작업을 담당합니다. 라우팅 처리 라우트 코드를 좀 더 읽기 쉽고 관리하기 쉽도록 모듈화하는 라우터 미들웨어가 있습니다. 응답처리 서버에서 클라이언트로 응답을 보낼 때 자료를 적절한 형태로 변환하거나 오류를 처리하는 작업을 합니다. 애플리케이션 레벨 미들웨어 애플리케이션 단계에서 사용하는 미들웨어를 말합니다. const expres.. 2024. 2. 8.
[Node.js] 노드제이에스 - 익스프레스에서 라우팅 Do it! Node.js 프로그래밍 입문 공부단 5일차 입니다. 라우팅 app.Method(요청url, 콜백함수) - Method : get, post, put, delete http 모듈 if(method === "GET" && url === "/") 아래와 같이 변경 express app.get("/", (req, res) => {...}) app.get("/", (req, res) => { // 루트경로에서 get 요청을 하면 그 뒤 오는 콜백함수를 실행하라는 의미 // res.status(200) // 응답 상태 코드를 200으로 설정 // res.send("Hello Node") // 응답객체 res의 send 함수를 사용하여 응답을 화면에 표시 // => 메서드 체이닝 res.status(2.. 2024. 2. 7.
[Node.js] 노드제이에스 - 익스프레스(Express) Do it! Node.js 프로그래밍 입문 공부단 5일차 입니다. 익스프레스 노드에서 가장 많이 사용하는 백엔드 프레임워크입니다. 익스프레스의 기능 라우팅 미들웨어 템플릿 엔진 정적인 파일 지원 익스프레스와 노드몬 설치 npm install express npm install nodemon -g --save-dev 서버 코드를 계속 수정하면서 결과를 확인하려면 그때마다 서버를 종료한 후 재실행을 해야합니다. 이런 번거로운 과정을 편리하게 바꿔주는 패키지가 nodemon패키지입니다. 익스프레스 서버 만들기 const express = require("express") // 익스프레스 패키지 가져오기 const app = express() // express를 실행해서 app 서버 만들기 const port.. 2024. 2. 7.
[Node.js] 노드제이에스 - 동기처리와 비동기처리 Do it! Node.js 프로그래밍 입문 공부단 4일차 입니다. 동기처리 동기처리란 작성한 순서대로 작업을 처리하는 것을 동기처리라고 합니다. 자바스크립트는 기본적으로 동기처리 방식입니다. console.log("first") console.log("second") console.log("third") 자바스크립트는 싱글 스레드 언어이기 때문에 위와 같은 결과가 나옵니다. 스레드란 하나의 작업이 실행되는 최소단위입니다. 자바스크립트는 이런 스레드가 하나밖에 없어서 한 번에 하나의 작업만 처리할 수 있습니다. 반면에 자바를 비롯한 대부분의 백엔드 프로그래밍 언어는 멀티 스레드입니다. 그래서 동시에 여러 작업을 수행할 수 있습니다. 비동기처리 console.log("first") setTimeout(() .. 2024. 2. 6.
[Node.js] 노드제이에스 - 라우팅 Do it! Node.js 프로그래밍 입문 공부단 3일차 입니다. 라우팅 웹 프로그래밍에서 라우팅이란 클라이언트에서 들어오는 요청에 따라 그에 맞는 함수를 실행하는 것을 말합니다. 라우팅을 이용하면 사용자가 입력하는 url에 따라 다른 내용을 보여줄 수 있습니다. 또한 GET이나 POST, PUT, DELETE 같은 요청 메서드에 따라 처리할 함수를 다르게 연결할 수 있습니다. const http = require("http") // 라우팅 const server = http.createServer((req, res) => { const {method, url} = req res.setHeader("Content-Type", "text/plain") if(method === "GET" && url ===.. 2024. 2. 5.
728x90
반응형
LIST