Javascrip{filter}t를 사용해보셨다면 npm이라는 개념을 들어보셨을 겁니다. npm은 Javascrip{filter}t 개발자들이 특정 문제를 해결하기 위해 만든 코드를 쉽게 공유할 수 있게 해주고, 다른 개발자들이 자신의 애플리케이션에서 그 코드를 재사용할 수 있도록 합니다.
다른 개발자의 코드를 의존하게 되면, npm은 업데이트가 이루어졌는지 쉽게 확인하고 업데이트가 이루어졌을 때 다운로드할 수 있습니다.
이 재사용 가능한 코드들은 패키지 또는 모듈이라고 불립니다. 패키지는 하나 이상의 파일을 포함하는 디렉터리와, 패키지에 대한 메타데이터를 포함하는 "package.json"라는 파일입니다. 일반적인 애플리케이션, 예를 들어 웹사이트는 수십 또는 수백 개의 패키지에 의존합니다. 이런 패키지들은 보통 작고, 문제를 잘 해결하는 작은 조각을 만드는 것이 일반적인 아이디어입니다. 이렇게 하면 이 작은 구성 요소들로부터 더 크고 맞춤형 솔루션을 만들 수 있습니다.
이로 인해 특정 문제 영역에 집중하는 사람들로부터 패키지를 받아 조직 외부의 전문가들을 유치할 수 있는 많은 이점이 있습니다. 조직 외부에서 코드를 재사용하지 않더라도, 이 모듈 기반 접근법을 사용하면 팀이 더 잘 협력하고 프로젝트 전반에 걸쳐 코드를 재사용할 수 있습니다.
npm 웹사이트를 둘러보면 앱 개발에 도움이 되는 패키지를 찾을 수 있습니다. 웹사이트를 둘러보면 많은 Node 모듈을 찾을 수 있습니다. npm은 Node 패키지 매니저로 시작했기 때문에 서버 측에서 사용할 수 있는 모듈이 많습니다. 명령줄에서 사용할 수 있는 패키지 추가(package add) 명령어도 많이 있습니다. 프론트엔드에서 사용할 수 있는 패키지도 찾을 수 있습니다.
NPM은 웹사이트, 레지스트리, CLI의 세 부분으로 구성되어 있습니다. 웹사이트는 사용자가 패키지를 발견하는 주요 도구이고, 레지스트리는 방대한 패키지 정보 데이터베이스이며, CLI는 개발자가 레지스트리에 패키지를 게시하거나 설치하려는 패키지를 다운로드하는 방법입니다.
NPM은 다른 개발자의 코드를 재사용할 수 있는 방법이자, 다른 개발자와 코드를 공유하는 방법이며, 다양한 버전의 코드를 쉽게 관리할 수 있습니다. |