일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Algorithm
- Blog
- join()
- mongodb
- 타사인증
- 북마크앱
- MyPick31
- 장고 프로젝트 순서
- 장고 개발 순서
- 개발
- MYSQL
- 자바스크립트
- ART_Cinema
- python
- Bookmark
- passport.js
- Django Blog
- 파이썬 웹프로그래밍 장고
- 프로젝트
- Exercism
- Node.js
- JavaScript
- 북마크만들기
- 알고리즘
- 독립영화플랫폼
- til
- 장고 프로젝트
- 장고
- Django
- 예술영화추천
- Today
- Total
목록module (3)
Juni_Dev_log
앞에서 만든 app5.js 파일에는 사용자 등록 / 사용자 로그인 / 사용자 리스트 조회 등의 기능이 들어있다. 이제 이 기능을 변경하여 별도의 파일로 분리를 해보도록 하자. 이미 익스프레스 웹 서버를 만들면 라우팅 미들웨어를 사용할 수 있다는 것과 이 미들웨어는 각각의 기능을 별도의 모듈 파일로 분리할 수 있다는 것은 알 수 있다. 여기에서는 사용할 라우팅 미들웨어는 등록된 모델 쪽으로 요청 객체와 응답 객체를 전달한다. 그렇다면, 왜 요청 객체와 응답 객체를 전달하는 것일까? 웹 서버는 클라이언트의 요청에 응답하는 것이 가장 중요한 작업 중 하나이므로, 라우팅 미드웨어에서 모듈 쪽으로 요청 객체와 응답 객체를 전달할 수 있다면 많은 작업을 분라하여 처리할 수 있기 때문이다. 그런데 라우팅 미들웨어에서..
노드는 대부분 이벤트를 기반으로 하는 비동기 방식으로 처리한다. 그리고 비동기 방식으로 처리하기 위해서 서로 다른 이벤트를 전달한다. 예를 들어, 어떤 함수를 실행한 결과물도 이벤트로 전달한다. 이벤트는 한쪽에서 다른 쪽으로 알림 메세지를 보내는 것과 비슷하다. 즉, '지금 이쪽의 상태는 이렇다' 는 정보를 다른 쪽으로 보내는 것이다. 노드에서는 이런 이벤트를 보낼 수 있도록 EventEmitter 라는 것이 만들어져 있다. EventEmitter 를 통해서 이벤트를 주고 받는 방법을 알아보자. 이벤트 보내고 받기 노드의 객체는 EventEmitter를 상속받을 수 있으며, 상속받은 후에 EventEmitter 객체의 on() 과 emit() 메소드를 사용할 수 있다. on() 메소드는, 이벤트가 전달된..
노드에서 모듈 사용하기 하나의 함수 안에 모든 기능을 넣는 것보다 기능별로 여러 개의 함수로 나눈 후, 필요한 함수만 가져다 사용하면 다른 곳에서도 함수를 재사용할 수 있기 때문에 효율적으로 프로그램을 만들 수 있다. 또한, 각각의 기능을 나누어 프로그램 관리가 더 쉬워진다. 코드를 하나의 파일이 아니라 여러 개의 파일로 나누어 만들 때에도 이러한 장점을 그대로 살릴 수 있다. 메인 파일의 코드 중에서 독립적인 기능은 별도 파일로 분리할 수 있으며, 메인 파일에서는 전체적인 실행 순서나 흐름만으로 제어한다. 이렇게 분리된 파일을 노드에서는 모듈이라고 부른다. 모듈이란 별도의 파일로 분리된 독립 기능의 모음이라서 모듈을 만들어 놓으면 다른 파일에서 모듈을 불러와 사용할 수 있다. 각각의 기능을 분리시킬 때..