문서 편집 권한이 없습니다. 다음 이유를 확인해주세요: 요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다: 사용자. 문서의 원본을 보거나 복사할 수 있습니다. [[분류:오픈소스 프로젝트]] == 개요 == Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어로 [[자바스크립트]]를 활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다. 내장 [[HTTP]] 서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹 [[서버]]의 동작에 있어 더 많은 통제를 가능케 한다. == NPM == npm (노드 패키지 매니저/Node Package Manager)은 자바스크립트 프로그래밍 언어를 위한 패키지 관리자이다. 자바스크립트 런타임 환경 Node.js의 기본 패키지 관리자이다. 명령 줄 클라이언트(npm), 그리고 공개 패키지와 지불 방식의 개인 패키지의 온라인 데이터베이스(npm 레지스트리)로 이루어져 있다. 이 레지스트리는 클라이언트를 통해 접근되며 사용 가능한 패키지들은 npm 웹사이트를 통해 찾아보고 검색할 수 있다. 패키지 관리자와 레지스트리는 npm사에 의해 관리된다. 설치된 모듈은 require('모듈이름')을 통해 호출하여 사용하게 된다. === 예시 === npm init : npm 모듈의 dependeny 와 같은 정보를 패키지에 기록한다. npm install : npn install express --save 와 같은 뜻으로 현재 실행하고 있는 디렉토리'만' 사용하는 모듈을 설치한다. npm install 모듈이름 -g : 이 컴퓨터 전체를 대상으로 모듈을 설치한다. npm update : 설치한 패키지를 업데이트 한다. npm dedupe : 중복된 패키지들을 정리한다. npm docs : 패키지에 대한 설명을 보여준다. npm outdated : 오래된 패키지가 있는지 알려준다. npm ls : 패키지를 조회한다. npm search : npm 저장소에서 패키지를 검색한다. === 유용한 npm 모듈들=== #jsonwebtoken: 세션이나 기타 토큰발행을 위한 [[JSON WEB TOKEN]](Jwt) 발행을 도와준다. #md5: md5방식의 암호화 모듈 #pbkdf2: 보다 진보된 방식의 암호화 모듈 #uuid: 랜덤한 문자/숫자 만드는 모듈 #winston: 로그를 만드는 모듈 == Node.js 의 [[프레임 워크]]및 [[라이브러리]]== #[[Express]] (HTTP 기반의 웹 프레임 워크) #[[Socket.io]] (실시간 양뱡향 통신 지향의 프레임 워크) #[[Mongoose]] ([[JSON]]기반의 [[noSQL]]인 [[몽고DB]]에 연결하도록 하는 라이브러리) Node.js 문서로 돌아갑니다.