ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • node.js
    concept/server 2020. 5. 25. 00:27

     

    node.js 무엇인가?

    • 노드는 크롬 v8엔진으로 만들어진 자바스크립트 런타임이다.

    v8 모야?

    자바스크립트를 기계어로 컴파일 해준다.

    런타임은? 프로그래밍 언어가 구동되고 있는 환경

     

    => 자바스크립트를 컴파일 해주는 엔진으로 빌드된 자바스크립트가 구동 중인 환경이다.

     

    • 이벤트 기반의 논블로킹 IO모델이다.

    이벤트?

    유저의 버튼 클릭이나 네트워크에 리소스를 요청하는

    논블로킹? (비동기)

    다음 함수의 실행이 현재 함수의 종료를 기다리지 않음

    블로킹?

    다음 함수의 실행이 현재 함수의 종료 이후에 이루어지는

    I/O모델?

    input 주면 output 반환하는 모델

     

    => 유저의 클릭이나 네트워크에 리소스를 요청하는 이벤트가 논블로킹으로 이루어지는 input output 모델 (속도가 빠르다)

     

    어떤 core modules 있는가?

    노드만 설치했으면, 따로 다른 설치 없이 있는 모듈

    require(‘’) 방식으로 사용할 있다.

    ex) fs, http, url, path

     

    npm (node package manager)

    노드패키지매니저

    세계에서 가장 오픈소스 라이브러리 생태계 하나

     

     

    Package.json 리뷰

    npm 활용하기 위한 정보들이 모여 있는 파일

    뿐만아니라 프로젝트 전반 정보가 적혀 있다.

     

    script

    : CLI에서 해당 코드를 실행시킨다.

    dev-dependency

    : production 관계 없는 개발만을 위한 dependency (jest, eslint같은 )

    dependency

    : 직접 프로덕션과 관계 있는 라이브러리 (react)

     

     

    npm라이브러리 활용하는 방법

    터미널에서

    mkdir npm start

     

    CLI에서 파일을 열어서

     

    npm init : 폴더를 npm 쓰는 프로젝트로 설정하겠다.

    description이랑

    main 실행할 js파일 이름 쓰기 엔터엔터 yes하면

    package.json이라는 파일이 생성된다.

     

     

     

    그래서 자바스크립트 파일을 만들어서 파일을 실행시키는 방법이 2가지가 있다.

    node index.js

    이렇게 실행시키거나 조금 더 간단하게 만들기 위해서

     

     

    package.json script 키에 명령어(start), 밸류에 node index.js 적고

    npm start

    명령어에 실행시키기

     

    nodemon 활용법

    http 서버를 변경사항을 바로바로 적용해서 서버를 있다!! (*핵중요한 기능)

     

    먼저 터미널에서

    npm install —save nodemon

    npm install —save nodemon

    설치해주면 dependencies nodemon 추가된 것을 확인할 있다.

     

    그래서 터미널에

    nodemon index.js

    nodemon index.js

    명령어로 파일을 실행시키고

    코드 변경하고 저장하면 자동으로 변경사항을 반영해서 다시 한번 변경사항을 실행하게

     

     

     

    라우팅이란?

    조건에 따른 분기

    클라이언트가 보낸 요청을 조건에 따라 나누어 응답을 결정하는 (메소드와 유알엘로 나뉜다)

     

     

    콘솔창에서 디버깅 할 수 있는 명령어

    node --inspect-brk

    'concept > server' 카테고리의 다른 글

    Server & Node 알고 넘어가야 할 요점 정리  (0) 2020.06.11
    Web Architectures 정리  (0) 2020.06.10
    Browser Security (CORS, XSS, CSRF)  (1) 2020.05.24
    브라우저, 서버, API, HTTP, Ajax 개념 정리  (0) 2020.05.24
    node.js / NVM / NPM  (1) 2020.04.30

    댓글

Designed by Tistory.