JavaScript - なぜパッケージマネージャーがあるのですか?それとも何をするのですか?
滿天的星座
滿天的星座 2017-05-19 10:16:42
0
2
456

たくさんの情報を見つけましたが、これについて明確な説明がありません。誰か説明してもらえますか?

滿天的星座
滿天的星座

全員に返信(2)
曾经蜡笔没有小新

少なくとも 2 つの利点があります:

  1. 他の人がすでに書いたコードを再利用します

  2. パッケージの前に依存関係を管理

最初のポイントは明らかです。プロジェクトごとに jQuery や React のようなものを書くのではなく、他の人がすでに書いたものを直接使用します。従来の方法は、公式 Web サイトにアクセスして対応する js ファイルをダウンロードし、それをプロジェクトの対応するパス (/assets/js/ など) に配置します。そして現在では、npm や Yarn などを使用して、オープン アクセス パッケージの 99.9999% が 1 か所に集中して保存され、簡単に検索してダウンロードできるようになりました。以前はソフトウェアをダウンロードするためにどこにでも行かなければならなかったのと同じですが、360 Software Manager を使用すると、ここで検索してダウンロードするだけで済みます。多くの時間が失われます。

2 番目のポイントは、実際には最初のポイントの発展版です。みんなが書いたパッケージがすべてここに置かれているからです。新しいパッケージを書きたい場合、その中にある小さなプログラムがたまたま他の人によって書かれていたので、それを使います。これは、私のパッケージが他の人のパッケージに依存していることを意味します。たとえば、大規模なライブラリ (パッケージ) の依存関係は複雑になる場合があります。たとえば、複数の他のパッケージに依存しているため、各パッケージは特定のバージョンに対応する必要があります (バージョンが違いすぎるため、依存関係が異なる可能性があります)。 API の非互換性の状態)。このように、各依存パッケージを手動でダウンロードすると、指数関数的なタスクになります:

A パッケージは B と C に依存し、C は D と E に依存し、B は F、G、H に依存し、D は I、J、K に依存します...

これは基本的に人間には完了できないタスクです。

もちろん、パッケージ マネージャーが存在する前は、これほど多くの他の人のパッケージに依存するパッケージを作成する人は誰もいませんでした。その結果、当然のことながら作業の重複が発生しました。各パッケージは、一般的に使用されるいくつかの機能を独自に実装していました。

今のところ思いつく用途は上記です。他にも思いついたら追加していきます。

いいねを押す +0
小葫芦

00

関数を作成し、それを使用して作業を実行します

リーリー

01

その仕事が終わったら、新しい仕事を始めます。 この関数が再び必要になり、改善する必要があります:

リーリー

とても簡単です。コピーして貼り付け、zを追加するだけです

02

01 で add が 3 つのパラメーターを受け入れられるようにするために行った作業は、新しいバージョンです
しかし、あなたは新しい仕事を受け取ったので、今回は改善を加える必要があります:

リーリー

99

数え切れないほどの改善を行ってきました。 ある日、再び 00 の単純な加算関数が必要になったとき:
———— これまでに実行した 99 個のタスクのうち、以前のコードをゆっくりと確認します。 。 。 。それからそれをコピーします

これはとても面倒なことです。 。 。

パッケージマネージャーはこれらすべてのタスクを自動化します。 コードをパッケージ化して、参照を要求し、npm コマンドを使用してワンクリックでインストールできます (バージョンを指定することもできます)

繰り返しや面倒なことはプログラミングで解決します

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート