Node.js

    [WebSocket/Socket IO] 채팅 서비스 구현 1. 프로젝트 설정

    안녕하세요. 휘입니다. 이번 시리즈에서는 WebSocket과 Socket IO를 사용한 실시간 채팅 서비스를 구현하는 방법에 대해 살펴보려고 합니다. 1. 백엔드 설정하기 먼저, 프로젝트를 진행할 새로운 디렉토리를 생성하고 이동한 다음 터미널을 엽니다. (1) NodeJS 설치와 package.json 생성 Node.js를 설치합니다. 설치 완료 후 node -v를 통해 설치가 잘 됐는지 확인할 수 있습니다. 다음으로 package.json 파일을 생성해줍니다. npm init -y express를 설치해줍니다. npm i express (2) Babel 설치와 설정 자바스크립트 컴파일러 Babel을 설치해줍니다. npm i @babel/core @babel/cli @babel/node @babel/pr..


    Node.js 에서 Nodemon으로 자동으로 서버 새로고침 하기

    Node를 통해 서버를 실행할 경우, 파일의 변경 사항이 발생하여도 서버가 실행 중일 경우에는 자동으로 새로고침 되어 변경 사항이 반영되지 않습니다. 따라서, 커맨드 라인에서 실행 중인 서버를 종료하고 다시 노드를 실행하고, 새로고침해서 확인해야 하는 번거로움이 있는데요. 변경 사항을 자동으로 반영하도록 할 수는 없을까요? 노드에서 자동으로 서버 새로고침하기 파일에 변경 사항이 발생했을 때, 노드에서 자동으로 서버를 새로고침하려면 다음과 같이 새로운 NPM 인 nodemon을 설치해야 합니다. npm install -g nodemon nodemon 을 설치한 다음에는 이를 사용하기 위해 node server.js와 같이 파일을 실행하지 않고, nodemon server.js 와 같이 파일을 실행합니다. ..


    package.json 파일이란 무엇이며 어떤 역할을 할까요?

    모든 npm 패키지는 package.json 파일을 프로젝트 루트에 포함하고 있습니다. package.json 파일은 무엇이며 또 어떤 역할을 할까요? pacakage.json이란? package.json 파일에는 프로젝트와 관련된 메타데이터가 담깁니다. 앞서 npm을 패키지를 주고 받는 장소라고 설명했는데요. package.json 은 주고 받는 패키지에 대한 상세 설명서라고 할 수 있습니다. 즉, 패키지의 이름, 버전, 데이터 등이 담긴 파일이 바로 package.json입니다. 이러한 정보들은 모두 npm 뿐만 아니라 패키지의 최종 사용자에게 무척 중요한 것들입니다. 이러한 package.json 파일은 보통 Node.js 프로젝트의 루트 디렉토리에 위치해 있으며, npm 은 이를 통해 프로젝트를 ..


    Node.js 터미널로 자바스크립트 파일 실행하기

    Node.js 터미널로 자바스크립트 파일을 실행하는 방법을 정리해 보려 합니다. 이를 위해서는 먼저, Node.js가 설치되어 있어야 하는데요. 이후 터미널을 실행하고, 자바스크립트 파일이 위치한 경로로 이동해 파일을 실행하면 됩니다. 상세 과정은 다음과 같습니다. 실행하고자 하는 파일이 Desktop > Nodejs 내 test.js 이라고 해보겠습니다. 터미널에 다음과 같은 명령어를 통해 디렉토리를 이동합니다. cd ~/Desktop/Nodejs 잠시 명령어를 살펴보자면, cd 는 디렉토리 변경 명령어 이며 ~ 는 기본 사용자 선택, 이후는 해당 하위 폴더의 경로를 의미합니다. 디렉토리가 제대로 변경되었는지 확인하려면 pwd 명령어를 사용하면 됩니다. 폴더 내 파일의 리스트들을 보려면 ls -al 명..


    Node.js와 브라우저의 차이점 (번역)

    Node.js와 브라우저의 차이점은 무엇일까요? Node.js와 브라우저는 모두 프로그래밍 언어로 자바스크립트를 사용합니다. 그러나 브라우저에서 실행되는 앱을 만드는 것과 Node.js 앱을 만드는 것은 완전히 다른 일입니다. Node.js와 브라우저 모두 언제나 자바스크립트를 사용하지만, 몇 가지 차이점은 현격한 차이를 만들어 냅니다. 브라우저에서는 대부분 DOM 또는 쿠키와 같은 다른 웹 플랫폼 API와 상호작용하게 됩니다. 물론, Node.js에는 그런 것들이 존재하지 않습니다. Node.js에는 브라우저에서 제공되는 document, window과 같은 다른 객체들이 존재하지 않습니다. 그러나 브라우저에는 Node.js가 모듈을 통해 제공하는 파일 접근 기능과 같은 API들이 없습니다. 또 다른 ..