javascript - 왜 패키지 관리자가 있나요? 아니면 무엇을 합니까?
滿天的星座
滿天的星座 2017-05-19 10:16:42
0
2
437

많은 정보를 찾아봤지만 이에 대한 명확한 설명이 없습니다. 설명해 주실 수 있나요?

滿天的星座
滿天的星座

모든 응답(2)
曾经蜡笔没有小新

적어도 두 가지 장점이 있습니다:

  1. 다른 사람이 이미 작성한 코드 재사용

  2. 패키지 이전 종속성 관리

첫 번째 요점은 분명합니다. 모든 프로젝트에 대해 jQuery나 React와 같은 것을 작성하지 않고 다른 사람들이 이미 작성한 것을 직접 사용할 것입니다. 전통적인 방법은 공식 웹사이트로 이동하여 해당 js 파일을 다운로드한 다음 /assets/js/과 같이 프로젝트의 해당 경로에 넣는 것입니다. 이제 npm 및 Yarn과 같은 기능을 통해 오픈 액세스 패키지의 99.9999%가 중앙 집중화된 위치에 있으므로 쉽게 찾고 다운로드할 수 있습니다. 예전에는 소프트웨어를 다운로드하려면 어디든 가야 했지만 이제는 360 소프트웨어 관리자를 사용하면 여기에서 검색하고 다운로드하기만 하면 됩니다. 많은 시간이 낭비됩니다.

두 번째 포인트는 사실 첫 번째 포인트의 개발 버전입니다. 모두가 작성한 모든 패키지가 여기에 배치되기 때문입니다. 새로운 패키지를 작성하고 싶다면, 그 안에 들어있는 작은 프로그램이 우연히 다른 사람이 작성한 것 같아서 그것을 사용합니다. 이는 내 패키지가 다른 사람의 패키지에 종속되어 있음을 의미합니다. 대규모 라이브러리(패키지)의 종속 관계는 복잡할 수 있습니다. 예를 들어 수십 개의 다른 패키지에 종속되는 동시에 각 패키지는 특정 버전에 대응해야 합니다(버전이 너무 다르기 때문에 API 비호환성 조건). 이러한 방식으로 각 종속 패키지를 수동으로 다운로드하면 기하급수적인 작업이 됩니다.

패키지 A는 B와 C에 종속되고, C는 D와 E에 종속되고, B는 F, G, H에 종속되고, D는 I, J, K에 종속됩니다...

# 🎜🎜#
이것은 기본적으로 인간이 완료할 수 없는 작업입니다.

물론, 패키지 관리자가 있기 전에는 누구도 그렇게 많은 다른 사람들의 패키지에 의존하는 패키지를 작성하지 않았습니다. 그 결과 당연히 작업이 중복되었습니다. 각 패키지는 일반적으로 사용되는 일부 기능을 자체적으로 구현했습니다.

위는 현재 생각나는 용도들입니다. 다른 분들도 생각나면 추가하겠습니다.

小葫芦

00

함수를 작성하고 이를 사용하여 작업을 수행합니다

으아아아

01

그 일이 끝나면 새로운 일을 시작합니다. 이제 이 기능이 다시 필요하며 개선이 필요합니다:

으아아아

아주 간단합니다. 복사해서 붙여넣고 z를 추가하면 됩니다.

02

3개의 매개변수를 추가하기 위해 01에서 수행한 작업은 의 새 버전입니다.
하지만 새로운 직업을 얻었으니 이번에는 개선이 필요합니다:

으아아아

99

수많은 개선을 이루었습니다. 어느 날 다시 00의 간단한 덧셈 기능이 필요할 때:
———— 당신은 지금까지 수행한 99개의 작업 중에서 이전 코드를 천천히 살펴봅니다. . . . 그런 다음

위에 복사하세요.

정말 곤란한 일이네요. . .

패키지 관리자는 이러한 모든 작업을 자동화합니다. 코드를 패키징한 다음 참조를 요구하고 npm 명령을 사용하여 한 번의 클릭으로 설치할 수 있습니다(버전을 지정할 수도 있음)

반복되고 번거로운 일은 프로그래밍으로 해결됩니다

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿