[npm] NPM / Bower / Composer-차이점?

누군가 나에게 NPM, Bower및 의 차이점을 설명 할 수 있습니까 Composer?

그들은 모두 패키지 관리자입니다-맞습니까?

그러나 각각은 언제 사용해야합니까?

또한 각 파일에는 함께 제공되는 json 파일이있는 것으로 보입니다. cmd 행으로 설치할 수 있도록 필요한 모든 패키지를 저장합니까? 이 파일이 필요한 이유는 무엇입니까?



답변

npmnodejs 패키지 관리자입니다. 따라서 일반적으로 서버 측 nodejs 프로젝트 또는 명령 줄 프로젝트 (bower 자체는 npm 패키지)를 의미하는 nodejs 환경을 대상으로합니다. nodejs로 무엇이든 할 예정이라면 npm을 사용할 것입니다.

bower(프론트 엔드) 웹 프로젝트를 목표로하는 패키지 관리자입니다. bower를 설치하고 실행하려면 npm과 nodejs가 필요합니다. 그러나 bower 패키지는 nodejs를위한 것이 아니라 “브라우저”환경을위한 것입니다.

composerPHP 프로젝트를 대상으로하는 종속성 관리자입니다. 심포니 (또는 평범한 오래된 PHP)로 무언가를하고 있다면 이것이 갈 길일 것입니다.

요약 :

  • 노드를하고 있습니까? 당신은 npm을
  • PHP를하고 있습니까? 작곡가 시도
  • 프론트 엔드 자바 스크립트? 정자를 시도하다

예, “json”파일은 기본 패키지 정보와 종속성을 설명합니다. 그리고 네, 필요합니다.

이제 README는 어떻습니까? 🙂

[업데이트, 4 년 후]

  • bower더 이상 사용되지 않으며 더 이상 새 프로젝트에 사용해서는 안됩니다. 대부분의 경우 노드 종속성 관리에 포함되었습니다 (웹 사이트에서 “Bower가 유지되는 동안 프런트 엔드 프로젝트에 Yarn 및 Webpack 또는 Parcel 사용을 권장합니다”).
  • yarn더 나은 npm(몇 가지 npm결함 수정 )으로 나 왔으며 , 프론트 엔드 또는 노드 개발을 수행하는 경우 새로운 사실상의 표준이므로 지금 사용해야 할 것입니다. package.jsonnpm과 동일 하게 소비하며 거의 완전히 호환됩니다.
  • composer이 시점 에서는 사용하지 않을 것입니다 (를 사용하지 않기 때문에 php). 아직 살아 있고 인기가있는 것 같지만

답변