npm은 NodeJS 기반 환경을 위한 패키지 관리자입니다. JavaScript 프로젝트를 설정하고 효율적으로 관리하는 데 필요한 가장 중요한 도구 중 하나입니다. 프로젝트 설정에 소요되는 시간을 줄이고 실제 코드에 더 집중하기 위해 모든 JavaScript 개발자는 npm을 선택합니다. 훌륭한 노드 프로젝트를 개발하기 위한 전제 조건 중 하나는 npm을 배우는 것입니다.
다음은 이 도구를 학습하는 데 사용할 수 있는 최상의 리소스에 대한 자세한 가이드입니다. 귀하가 자신의 필요에 가장 적합한 학습 경로를 선택할 수 있도록 도서, 비디오 강좌, 전문 가이드, 커뮤니티 제작 콘텐츠를 다룰 것입니다.
npm을 배우는 방법
도구의 세부 사항을 살펴보기 전에 도구의 역학과 용도에 대한 조감도를 얻는 것이 중요합니다. npm은 JavaScript 기반 프로젝트에만 관련됩니다. 플라스크, Django 또는 Golang을 사용하여 무언가를 구축하려는 경우 npm은 쓸모가 없습니다. 학습에 사용할 수 있는 리소스로 넘어가기 전에 도구를 자세히 살펴보겠습니다.
npm이란 무엇인가요?
Npm은 node.js 설치와 함께 번들로 제공되는 명령줄 도구이며 새 노드 프로젝트를 초기화하는 데 사용할 수 있습니다. npm과 같은 패키지 관리자를 사용하면 이러한 패키지를 쉽게 설치하고 관리할 수 있습니다.
npm의 시작은 공유할 가치가 있는 이야기입니다. node.js가 도입되면서 서버 런타임 환경에서 JavaScript를 사용할 수 있는 가능성이 생겼습니다. V8 JavaScript 런타임과 C++의 결합으로 노드가 매우 빨라졌습니다. 그러나 노드의 초점은 서버 측 애플리케이션에서 자동화 및 유틸리티를 위한 더 넓은 범위의 JavaScript 도구로 점차 이동했습니다. webpack, Babel, Gulp와 같은 패키지는 사람들이 Node의 진정한 잠재력을 천천히 탐색하기 시작하면서 등장했습니다.
남아 있는 큰 공백은 "이러한 도구를 모든 JavaScript 런타임에 걸쳐 어떻게 일반화할 것인가?"라는 질문이었습니다. 이것이 npm과 같은 패키지 관리자가 등장한 곳입니다. 이는 이러한 패키지 관리 프로세스를 일반화했습니다. Yarn 및 pnpm과 같은 npm에 대한 다른 대안이 있지만 이는 이 기사의 범위를 벗어납니다.
npm은 어디에 사용되나요?
노드 기반 프로젝트의 라이프사이클에는 npm이 여러 가지 용도로 사용됩니다. 그 중 일부를 간단히 살펴보겠습니다:
- 새로운 프로젝트를 설정하는 중입니다. 노드 프로젝트에는 우선 몇 가지 상용구 코드가 포함되어 있습니다. 일반적으로 위치를 노드 프로젝트로 식별하는 것은 package.json 파일입니다. 어떤 경우에는 새 프로젝트의 기본 요구 사항이 package.json 파일보다 훨씬 더 클 수 있습니다. Npm은 이러한 요구 사항을 수용하고 새 프로젝트를 초기화하는 빠르고 간단한 방법을 제공합니다.
- 종속성 설치. 프로젝트 작업을 할 때 타사 종속성을 설치해야 할 수도 있습니다. 새로운 React 프로젝트를 설정하는 경우 React 라이브러리만큼 기본적인 것조차 수동으로 설치해야 합니다. npm은 종속성을 빠르게 설치하고 제거할 수 있는 매우 편리한 명령을 제공하여 이 프로세스를 단순화합니다.
- 반복적인 작업 자동화. 일반 프로젝트 개발 프로세스에서 작업을 실행하는 것은 반복적입니다. 코드를 메인 저장소에 푸시하기 전에 코드를 린트해야 하는 경우가 많습니다. 다른 경우에는 git 커밋을 승인하기 전에 테스트가 필수입니다. 이러한 작업은 항상 수동으로 수행할 수 있지만 npm은 바로가기를 제공합니다. package.json 파일에서 스크립트 형식으로 이러한 명령을 정의할 수 있습니다. 그런 다음 이러한 스크립트를 실행 또는 빌드와 같은 특정 키워드에 할당할 수 있습니다.
- 패키지를 게시합니다. npm은 전 세계적으로 사용 가능한 노드 패키지의 npmjs.com 저장소에 대한 기본 지원을 제공합니다. 이는 패키지를 구축하고 게시하는 것이 쉽다는 것을 의미합니다. 패키지를 온라인으로 전환하려면 몇 가지 명령만 있으면 됩니다.
- GitHub과의 호환성 :npmjs.com 노드 패키지 저장소 외에도 npm은 GitHub 패키지도 지원합니다. 즉, GitHub 패키지가 연결된 GitHub 저장소가 있는 경우 npm 패키지를 게시하고 이를 로컬 프로젝트에 종속성으로 가져올 수 있습니다.
npm 학습
npm은 매우 다재다능한 도구이므로 주기적으로 살펴보는 것이 중요합니다. 다음은 초보자가 npm을 시작하는 데 도움이 되는 리소스 목록입니다.
최고의 npm 리소스
npm은 JavaScript 생태계의 도구이므로 커뮤니티에서 생성된 많은 콘텐츠를 사용할 수 있습니다. 이에 대해 살펴보기 전에 시작하는 데 도움이 되는 몇 가지 훌륭한 동영상 강좌를 소개합니다.
npm – 기본 익히기
- 플랫폼:Udemy
- 소요시간:40분
- 가격:무료
- 전제조건:없음
- 시작일:주문형
1,500명이 넘는 학생들이 별 4.4점을 준 이 코스는 다른 코스들 중에서 단연 돋보입니다. 무료이자 주문형이기 때문에 완전 초보자를 위한 최고의 비디오 리소스를 구성합니다. 이 40분 코스는 16개의 비디오로 구성되어 있으며 각 하위 주제를 약 3분 동안 다룹니다. 이를 통해 학습자는 npm의 모든 하위 주제에 대한 콘텐츠를 쉽게 참조할 수 있습니다.
Traversy Media의 NPM 집중 강좌
- 플랫폼:유튜브
- 시간:42분
- 가격:무료
- 전제조건:없음
- 시작일:주문형
이것은 npm의 필요한 모든 하위 주제를 다루고 그에 대한 충분한 정보를 제공하는 주제에 대해 사용할 수 있는 가장 간결한 코스 중 하나입니다. npm의 모든 측면을 살펴볼 수 있을 뿐만 아니라 필요할 때마다 다시 참조할 수 있을 만큼 짧은 과정을 찾고 있다면 바로 이 과정입니다. 좋은 점은 Traversy Media가 초보자 친화적인 강좌를 만드는 것으로 큰 평판을 얻고 있다는 것입니다.
NPM 플레이북
- 플랫폼:Pluralsight
- 소요시간:1시간
- 가격:Pluralsight 구독 필요
- 전제조건:없음
- 시작일:주문형
NPM 플레이북은 350명이 넘는 학생들로부터 별점 4.5점을 받았습니다. npm에 대한 사전 경험이 있는 경우 수강하는 것이 좋습니다. 이 과정은 npm CLI로 작업할 때 내부적으로 어떤 일이 벌어지는지에 대한 훌륭한 통찰력을 제공합니다.
npm 도서
비디오 강좌 외에도 npm을 시작하는 데 도움이 되는 많은 책이 있습니다. 주요 내용은 다음과 같습니다:
SitePoint의 '노드 패키지 관리자인 npm에 대한 초보자 가이드'
4.99달러의 가격으로 제공되는 이 책은 npm의 기본 사항을 매우 자세하게 다루고 있습니다. 여기에서 실시간 미리보기도 가능합니다. 이 책에는 노드 기반 프로젝트의 중요한 파일인 package.json에 대한 전용 섹션도 있습니다. 많은 리소스가 종속성의 버전 제어와 같은 작은 세부 사항을 놓치고 있지만 이 책에서는 모든 내용을 다룹니다.
Rising Stack의 'NPM 사용법 배우기'
NPM 사용 알아보기 Rising Stack에서 출판한 무료 전자책입니다. 적절하게 짧고 간결하므로 도구의 기본 사항을 빠르게 훑어볼 수 있는 훌륭한 리소스입니다. Rising Stack 랜딩 페이지에 이메일 주소를 입력하면 전자책을 무료로 다운로드할 수 있습니다.
npm 리소스
비디오 코스와 책을 통한 학습 외에도 npm에 대한 몇 가지 훌륭한 글이 온라인에서 제공됩니다. 다음은 npm에 관한 훌륭한 기사 목록입니다:
- Robin Wieruch의 NPM 집중 강좌
- nodesource.com이 제공하는 npm 사용을 위한 완전 초보자 가이드
- SitePoint의 노드 패키지 관리자인 npm 초보자 가이드
위에서 공유한 리소스 외에도 독립적으로 사용할 수 있는 좋은 리소스는 거의 없습니다. 그 이유는 대부분의 표준 Node.js 과정이 npm을 독립적인 장으로 다루기 때문입니다.
개발자가 Node 환경 외부에서 npm을 배워야 하는 경우는 거의 없습니다. 이것이 바로 노드 기반 코스 내 npm에 대한 훌륭한 비디오나 글을 찾을 수 있는 이유입니다. 하지만 충분하지 않다고 생각되면 언제든지 이 목록으로 돌아와 해당 주제에 대한 전용 콘텐츠를 얻을 수 있습니다.
npm을 배우는 데 얼마나 걸리나요?
npm의 사용 편의성을 고려하면 일반적으로 초보자가 도구에 익숙해지는 데 약 10일이 걸립니다. 핵심은 명령을 계속 실험하고 처음 접하는 동안 더미 프로젝트에서 계속 연습하는 것입니다.
또는 npm의 가장 중요한 명령의 짧은 목록과 그 옆에 한 줄 설명을 적어 볼 수도 있습니다. 이 목록을 책상 위에 포스트잇으로 붙이거나 컴퓨터 화면에 가상 스티커 메모를 만들 수 있습니다. 이는 기억할 수 없는 명령을 찾을 때 매우 유용합니다. npm 명령의 일반적인 치트 시트는 다음과 같습니다:
- Init – 새 프로젝트를 초기화합니다
- install <패키지> – 해당 패키지를 설치합니다
- build – package.json에 정의된 빌드 스크립트를 실행합니다.
- start – package.json에 정의된 시작 스크립트를 실행합니다.
- publish – npmjs.org에 로컬 패키지를 게시합니다.
- uninstall <패키지> – 해당 패키지를 제거합니다
- run-script