Node.js(이하 노드)는 Chrome V8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임입니다. 종종 어떤 사람들은 프레임워크라고 보기도 하지만 공식문서에서는 런타임이라고 이야기 합니다.런타임(runtime)이란 특정 언어로 짜여진 프로그램들을 실행할 수 있는 환
REPL은 콘솔 상에서 노드를 실행할 수 있게 해주는 것입니다. REPL는 Read Eval Print Loop의 줄임말로, 읽고 해석하고 보여주고 반복한다는 의미입니다.사용법은 윈도우라면 cmd 맥이나 리눅스는 터미널을 열고 node를 입력합니다. (노드를 설치해야
Node.js에서 모듈을 어떻게 사용하는지 알아보겠습니다.저는 getSum이라는 합을 구하는 함수를 모듈로 이용하려고 다음과 같이 코드를 작성했습니다. 기존 자바스크립트 ES6방식에서는 모듈로 내보내고자 하는 변수, 함수 등의 앞에 export를 붙였지만, Node.j
모든 프로그래밍 언어를 배우다보면 항상 처음에 등장하는 동시에 그 언어의 성격을 맛 볼 수 있는 문구가 존재합니다. 바로 Hello world!라는 문장입니다. 우리는 이 포스트를 통해 노드로 처음 서버를 열어보고 헬로 월드도 출력해볼 것 입니다.우리는 서버를 열기 위
주소창을 보면 일반적으로 다음과 같이 알 수 없는 문자열이 나열되어있습니다.이것은 페이지에서 현재 주소를 나타냄과 동시에 요청 내용을 표시합니다. 우리는 지금 부터 이 내용을 통해 어느정도 지금 페이지에서 무엇을 요청해서 보여주고 있구나를 알 수 있습니다.REST는 R
쿠키와 세션에 대한 자세한 정보는 이 포스트를 참조해주세요.위의 포스트에서 쿠키와 세션을 정리해두었습니다. 그래도 짧게 설명하고 넘어가겠습니다.쿠키는 웹 페이지 방문 시 생기는 정보들을 담아서 브라우저 자체에 저장되는 임시 저장 파일입니다. 즉, 클라이언트측에 저장되는
npm, Node Package Manager, 노드 패키지 매니저입니다. npm의 역할은 여러 패키지들을 쉽게 설치 및 업데이트, 삭제하도록 도와줍니다. 패키지들은 일종의 노드 모듈입니다. 그래서 우리가 편리하게 이용하다 보면 수 많은 패키지들을 설치하게 됩니다. 그
지난 포스트에서 package.josn을 다루면서 본격적으로 npm이 등장했는데요. 이에 대해 자주 쓰일 몇 가지 npm 명령어들을 소개하고 넘어가겠습니다. 몇 가지는 외워두면 편리한 것도 존재합니다.더 많은 명령어는 공식문서에 나와있으므로 공식문서를 활용해 주세요.p
그동안 배운 바닐라 자바스크립트, 리액트는 브라우저 상에서 작동하는 것이 위주였기 때문에 파일 시스템에 접근할 일이 없었습니다. 그래서 노드의 파일 시스템 모듈은 노드만의 특징이라고 할 수 있는 기능입니다.노드의 파일 시스템(fs, File System)은 파일 시스템
웹에서 빠질 수 없는 이벤트. 그동안 몇 개의 포스트를 거쳐오며 이벤트를 여러번 만났었는데요. 노드에서는 내부적으로 이벤트를 호출하는 경우도 있지만 프로그래머가 직접 이벤트를 생성할 수 도 있습니다.이벤트 생성은 EventEmitter객체의 메소드를 통해서 할 수 있습
지난번엔 http 모듈을 이용해서 서버를 열었었습니다. 하지만 이 방식에는 다양한 불편함이 따라옵니다. 그래서 이런 불편함을 해소하고자 npm에는 수 많은 서버 프레임워크들이 나타나게 되었습니다. express, koa 등이 노드 웹 서버 프레임워크들입니다. 이 중에서
미들웨어(Middleware)는 운영 체제와 응용 소프트웨어 사이에서 동작하는 중간자 소프트웨어입니다. 하지만 웹에서 말하는 미들웨어는 요청과 응답 중간에서 동작하는 것들을 미들웨어라고 부릅니다. 라우터 등이 대표적이 미들웨어의 일종입니다.익스프레스에서는 이 미들웨어들
템플릿 엔진이란 템플릿의 양식과 데이터의 모델에 따른 입력 데이터를 결합해서 사용자가 원하는 결과 문서를 출력해주는 소프트웨어 또는 컴포넌트를 말합니다. 우리가 알아볼 템플릿 엔진은 웹 문서의 결과로 출력될 예정이니 웹 템플릿 엔진이라고 합니다.템플릿 엔진을 이용하면
지난 포스트에서 템플릿 엔진인 퍼그를 소개해드렸습니다. 하지만 기존 자바스크립트와는 문법이 조금 다른 형태를 취하고 있어서 오히려 더 어려울 수 있다는 생각이 들더라고요. 그래서 좀 더 직관적으로 쓸 수 있는 템플릿 엔진인 넌적스도 한 번 소개해드리려고 합니다.넌적스도
Koa는 Express의 개발 팀이 만든 프레임워크입니다. Express와 비교했을 때, 작년기준으로 Koa는 2번째로 높은 다운로드 횟수를 기록했지만, 여전히 익스프레스에 비해서는 낮은 수치를 기록하고 있습니다. 물론 그렇다고 해서 Koa가 Express보다 나쁜 프
익스프레스를 다루며, 미들웨어(Middleware)에 대한 것을 알아봤습니다. 미들웨어는 요청과 응답 중간에서 동작하는 것들을 미들웨어라고 부릅니다. 라우터 등이 대표적이 미들웨어의 일종입니다. Koa 라이브러리도 미들웨어를 중요하게 다룹니다.Koa는 미들웨어 함수를
Koa 프레임워크를 처음 소개할 때, Express와 비교했었죠? Express에는 기본적으로 다양한 미들웨어, 기능들이 포함되어 있지만, Koa는 가볍게 만들어져서 필요한 기능들만 사용자가 직접 추가할 수 있다고 했었습니다.Koa에는 Express와 다르게 라우터 기
먼저 API에 대해서 설명을 하고자 합니다. API는 위키백과에서 다음과 같의 정의하고 있습니다.API는 컴퓨터나 컴퓨터 프로그램 사이의 연결이다. 일종의 소프트웨어 인터페이스이며 다른 종류의 소프트웨어에 서비스를 제공한다.저도 API를 조사하다가 이 글을 보고 한 번
오늘은 Sequelize라는 라이브러리에 대해서 소개하려고 합니다. 시퀄라이즈는 노드에서 관계형 데이터베이스 작업을 편리하게 수행할 수 있도록 도와주는 라이브러리입니다.여러 관계형 데이터베이스가 있지만 여기서는 MySQL을 이용하도록 하겠습니다. 또한 웹 서버 라이브러