다시 하자 Back-End/Koa framework(4)
-
[KoaJS] 4. Mongoose (1)
이번 포스팅에서는 Mongoose 모듈을 이용하여 클라이언트가 요청한 데이터를 MongoDB에 저장해보자. 지난번 Router 포스팅에서 첨부한 파일을 이용할 예정이니 참고하기 바란다. 지난 포스팅 보기 : [KoaJS] 3. Router 1. Mongoose 그림 1. Mongoose Mongoose는 MongoDB를 이용한 객체 모델링을 제공해주는 NPM 모듈로써, ODM (Object Document Modeling 혹은 Mapper)의 대표적인 모듈 중 하나다. Mongoose를 이해하기 위해서 먼저 MongoDB에 대해 간단히 알아보자. MongoDB 일반적으로 우리가 알고 있는 데이터 베이스는 SQL (구조화 질의 언어) 을 이용하여 데이터를 조작한다. SQL을 이용하는 데이터 베이스는 대부분..
2017.10.13 -
[KoaJS] 3. Router
지난 포스팅에서는 KoaJS로 개발하기 위한 환경설정과 첫번째 KoaJS 예제를 만들어보았다. (만들었다고 하기에는 부끄러운 수준이지만 ...) 이번 포스팅에서는 Koa-router에 대해서 알아보자. 지난 포스팅 보기 : [KoaJS] 2. KoaJS 개발을 위한 환경설정 1. Router 기본 웹 서비스는 다양한 자원 (HTML, JS, IMG ...) 을 가지고 있다. 이 자원들은 웹 서비스 내부의 여러 경로에 존재한다. 클라이언트는 원하는 정보를 얻기 위해 URI를 이용하여 웹 서비스에게 자원을 요청한다. 웹 서비스는 클라이언트가 요청한 URI에 따라 기능을 분기하는데, 이러한 작업을 자동으로 수행하는 모듈 또는 기능을 Router라고 한다. 이전 포스팅에 돌렸던 첫 번째 예제를 한번 실행 해보자..
2017.09.04 -
[KoaJS] 2. KoaJS 개발을 위한 환경설정
지난 포스팅에서는 KoaJS의 개념과 특징, ES6에서 새롭게 추가된 제너레이터 객체를 이용한 비동기 처리에 대해서 살펴보았다. 지난 포스팅 보기 : [KoaJS] 1. KoaJS 시작하기 이번 포스팅에서는 KoaJS를 사용하여 프로젝트를 진행하기 전에 필요한 환경설정에 대해서 알아보자. 1. Babel 설정 KoaJS는 ECMA 2017 명세의 async / await로 미들웨어의 비동기 작업을 수행한다. 따라서 이전 버전의 NodeJS를 사용할 경우 KoaJS를 사용하는데 어려움이 있다. (NodeJS 7.6.0 이하에서는 async / await 명세가 적용되어 있지 않다.) 그림 1. KoaJS 설치 시 요구사항에 대한 설명 가장 쉬운 방법은 NodeJS 버전을 업그레이드 하는 것이지만, 실제 프..
2017.08.09 -
[KoaJS] 1. KoaJS 시작하기
1. Express is dead? NodeJS 진영에서 가장 유명한 풀스택 웹 프레임워크로 알려져있는 Express가 작년부터 이상한 말들이 나오기 시작했다. 그림 1. Express is dead? 구글에서 "Express is dead" 를 검색하면 나오는 게시글 중에서 하나를 캡처해왔다. 내용을 살펴보면 Express의 Github에 마지막 커밋이 한달 전에 있었고, 이전에도 죽어있었다 (활동이 없었다) 는 것을 언급하고 있다. 하지만 17년 현재 Express의 Github를 보면 올해에도 커밋된 내용이 있음을 알 수 있다. 캡처한 글에 달린 댓글들도 "Express is dead" 라는 말을 동의하지 못하고 있는데, 소규모의 패치는 지속적으로 이루어지고 있으며 현재 진행하는 개발 작업들은 대부..
2017.08.03