誰かがNPM
、Bower
、およびComposer
の違いを説明できますか。
彼らはすべてパッケージマネージャーです-正しいですか?
しかし、それぞれをいつ使用する必要がありますか?
また、それぞれに付随するjsonファイルがあるように見えますが、これには必要なすべてのパッケージが保存されているので、cmd行でインストールできますか?なぜこのファイルが必要なのですか?
npm
はnodejsパッケージマネージャーです。したがって、通常はサーバー側のnodejsプロジェクトまたはコマンドラインプロジェクト(bower自体はnpmパッケージです)を意味するnodejs環境を対象としています。 nodejsで何かを行う場合は、npmを使用します。
bower
は、(フロントエンドの)Webプロジェクトを目的としたパッケージマネージャーです。 bowerのインストールと実行にはnpmとnodejsが必要ですが、bowerパッケージはnodejs専用ではなく、「ブラウザ」環境用です。
composer
は、PHPプロジェクトをターゲットとする依存関係マネージャーです。 symfony(または単純な古いphp)で何かをしている場合、これはおそらく行く方法です
要約すると:
はい、「json」ファイルには基本的なパッケージ情報と依存関係が記述されています。はい、必要です。
さて、READMEについてはどうですか? :-)
[更新、4年後]
bower
は非推奨であり、新しいプロジェクトには使用しないでください。大部分はノード依存関係管理に組み込まれています(彼らのWebサイトから:「Bowerは維持されていますが、フロントエンドプロジェクトにはYarnとWebpackまたはParcelを使用することをお勧めします」)。yarn
は、より良いnpm
(いくつかのnpm
の欠陥を修正する)として出てきました。これは、新しいデファクトスタンダードであるため、今すぐ使用すべきです。フロントエンドまたはノード開発を行っています。 npmと同じpackage.json
を消費し、ほぼ完全に互換性があります。composer
を使用しません(php
を使用しないため)NPM – nodejsのパッケージマネージャー。これは、世界最大のソフトウェアレジストリです。すべての大陸のオープンソース開発者は、npmを使用してパッケージを共有および借用します。パッケージは、依存関係とバージョンを追跡できるように構成されています。
Bower –フロントエンドWebプロジェクトのパッケージマネージャー。 Bowerは、HTML、CSS、JavaScript、フォント、さらには画像ファイルを含むコンポーネントを管理できます。 Bowerは、コードを連結または縮小したり、他の操作を行ったりすることはありません。必要なパッケージとその依存関係の正しいバージョンをインストールするだけです。また、npmパッケージです。したがって、npmを介してインストールできます。
npm install bower
Composer – Composerは、PHPの依存関係管理のためのツールです。 YumまたはAptと同じ意味でのパッケージマネージャーではありません。パッケージまたはライブラリを扱いますが、プロジェクトごとに管理し、プロジェクト内のディレクトリにインストールします。デフォルトでは、グローバルには何もインストールされません。したがって、これは依存関係マネージャーです。
2つのパッケージマネージャーの物語:ComposerおよびNPM
アプリ は、これらのパッケージマネージャーを区別するのに役立ちます。アプリケーションが複数のパッケージマネージャーを同時に活用する方法を示します。