web-dev-qa-db-ja.com

ジャム対バウアー、違いは何ですか?

クライアント側のJavascriptには2つのパッケージマネージャーがありますが、それらをどのように比較しますか?誰かがどれが何に優れているかを説明できますか?

23
Evan Carroll

他の人がコメントですでに述べたように、このスペースには、ジャムとバウアー以外にもいくつかの選択肢があります。

  • 成分
  • エンダー
  • ボロ

どちらも、アセットをパッケージ化し、クライアントのアセット間の依存関係を管理する方法を提供することを目的としています。 BowerとJamはどちらも2012年にデビューしたようです-それぞれ9月と5月。

どちらもnode/npmから利用でき、アプリケーションのバックボーン、アンダースコア、jqueryなどのパブリックライブラリ間の依存関係を解決するだけの場合は、どちらのソリューションも機能し、バージョンを制御するためのいくつかの基本的なオプションを使用できます。プロジェクト内で更新を確認します。

違いについては、BowerはJamよりも少し低いレベルであるため、より多くのユーザーが使用できます。 JavaScriptライブラリ以外のバウアーコンポーネントを作成できます。 Jamは、AMDスタイルのJavaScriptライブラリのみに焦点を当てています。 Jamを使用すると、npmコンポーネントですでに使用するpackage.jsonファイルで依存関係を指定できますが、Bowerは慣例によりcomponent.jsonを選択しています。 Bowerの制限は、依存関係のみをフェッチすることです。Require.jsまたはJamが選択した他のソリューションを使用して無料で入手する場合は、ビルドシステムが必要です。 Bowerは、Twitterや他のいくつかのプロジェクト(Ender、Yeoman)からサポートを受けています。

これが正しくない場合はお詫びしますが、Jamのもう1つの制限は、プライベートリポジトリに配布するための独自のコンポーネントを作成できないことです。これは、Bowerで.bowerrcのエンドポイントとして構成できるものですが、Jamでそれを行う方法をまだ見つけています。おそらく私は十分に検索していませんが、private-jam用のフォークが少なくとも1つあるようです。

他のいくつかの良い読み物:

20
j12y

人気のあるパッケージマネージャーのいくつかの以下の内訳を使用して、開発で何を使用するかを決定できます。事実を次のように比較します

  • マネージャーがpackage.jsonまたは他の形式の記述子を使用するかどうか
  • どの機能をサポートしていますか(足場、コンパイル、中央レジストリを持つ)
  • 速度
  • パッケージサポートの形式(jsのみ、jsとcss、js htmlとcss)
  • サポートされているモジュールタイプ
  • そしてもちろん、個人的な視点に基づいたいくつかのメモ

https://github.com/wilmoore/frontend-packagers

5
antitoxic