web-dev-qa-db-ja.com

なぜBowerを使用する必要があるのですか?

Pythonのpip、Nodeのnpm、Ruby Gems)のようなパッケージマネージャーの利点は、ファイルを追加するだけではないため、十分に理解できます。アプリケーションのパス。

多分私はポイントを逃している、または私は鈍感ですが、ここにnegativesがあります:

  • プロジェクトをビルドする際の個別のステップ
  • 別のパッケージマネージャー経由でインストールするための独立した依存関係(yo dawg)
  • プロジェクトルートのbower.jsonおよび/または.bowerrc
  • レジストリが最新で、正しく、利用可能であることへの依存
  • 画像などの一部のインポート/参照が機能しない
  • Npmと非常に重複しており、多くの場合、使用するリソースが不明確

positives私が見ることができるものはこれらです:

  • 依存関係を手動でダウンロードする必要はありません
  • オプションで、ユーザーのプロンプトなどに基づいて、足場の一部としてパッケージをインストールします

私は知らない利点を本当に知りたいのですが、私が本当に知りたい挑発的なことをしようとしているのではない、と言うべきです。

32
Wil

[〜#〜] readme [〜#〜] から:

BowerはWeb用のパッケージマネージャーです。それは、フロントエンドのパッケージ管理の問題に対する一般的で根拠のないソリューションを提供し、より独断的なビルドスタックによって消費される可能性のあるAPIを介してパッケージ依存モデルを公開します。システム全体の依存関係はなく、依存関係は異なるアプリ間で共有されておらず、依存関係ツリーはフラットです。

BowerはGit上で実行され、パッケージに依存しません。パッケージ化されたコンポーネントは、任意のタイプのアセットで構成でき、任意のタイプのトランスポート(AMD、CommonJSなど)を使用できます。

Bowerには、他の依存関係マネージャーの多くの利点があります。他にも確かにありますが、これまでに気付いた利点は次のとおりです。

  • 宣言的依存関係管理と呼ばれるものを簡素化します。つまり、他のものが簡単にそれらを決定できるように、bower.jsonで依存関係を宣言します
  • バージョン管理に依存関係をコミットする必要はありません
  • セマンティックバージョニングは、依存関係の許容可能なバージョンの範囲を定義するのに役立ちます。これにより、定義された範囲内の新しいバージョンに簡単に更新できます。
  • さまざまなビルド(デバッグ、ミニファイなど)を見つける必要がない
  • 開発と製品の依存関係の異なるビルドを使用するのは簡単
  • あなたはbower.jsonファイルを配布することができ、誰もが簡単な「bowerインストール」でスピードに慣れることができます
12
Mike Partridge