ホームページ » ツールキット » Web開発者のための11の依存関係管理ツール

    Web開発者のための11の依存関係管理ツール

    依存関係は現代のWeb開発の礎石です。これらは必要なツール、プラグイン、ライブラリ、そしてフレームワークです。 高度なWebアプリケーションを構築するために必要.

    過去数年間で膨大な数の依存関係が急増しています。時間の経過とともに開発者は依存関係管理ツールを採用しました。 依存関係を整理して最新の状態に保つというストレスを軽減する. これらのツールは開発者とプロジェクトマネージャのために最適化されたワークフローを導きます.

    ここでは、定評のあるプラットフォームと新興のプラットフォームの両方を含む、最高の依存関係ツールをカタログ化しました。専門的なWeb開発には継続的な学習が必要であり、依存管理は学習に値するスキルセットであると私は主張します.

    1. NPM

    Node Package Managerを信用せずにこのガイドを書くことはできませんでした。 Node.js上に構築されたこのシステムは、の膨大なリポジトリを提供します。 10万以上のパッケージとモジュール.

    各プロジェクトはNPMを通してpackage.jsonファイルセットアップを使用し、さらにGulp(on Node)で管理することもできます。依存関係は、端末から直接更新および最適化できます。そして、package.jsonファイルから自動的に引き出された依存関係ファイルとバージョン番号を使って新しいプロジェクトを構築することができます。.

    NPMは単なる依存関係管理以上の価値があり、現代のWeb開発には事実上必須のツールです。あなたが混乱しているならば、初心者の説明のためにこのRedditスレッドをチェックしてください.

    2. ower

    パッケージ管理システムBowerはNPM上で動作しますが、これは少し冗長に見えますが、両者の間には違いがあります。 ファイルサイズとロード時間の短縮 フロントエンドの依存関係.

    微妙な違いの詳細については、このStackの質問をご覧ください。.

    一部の開発者は、BowerはNPM上で実行されるため、Bowerは基本的に時代遅れであると主張しています。これはBowerが実行できるほとんどすべてのことを実行できるサービスです。一般的に言ってこれは間違っていません.

    しかし開発者はBowerができることに気づくべきです 特にフロントエンドの依存関係でワークフローを最適化する. 両方のパッケージ管理ツールから得られる価値についてもっと知るためには、Ben McCormickの記事Is Bowerが便利であることをお勧めします。.

    3. RubyGems

    RubyGemsはRubyのパッケージマネージャで、Web開発者の間で人気があります。プロジェクトはオープンソースであり、すべての無料のRuby gemを含みます.

    初心者のための簡単な概要を説明するために、 “宝石” ほんの一部です Ruby環境で動作するコード. これは、gemのバージョンを管理し、すべてを最新の状態に保つBundlerのようなプログラムにつながる可能性があります。.

    Rails開発者はこの機能を気に入るでしょうが、フロントエンドパッケージはどうでしょうか。 Rubyはオープンソースなので、開発者はBower for Railsのようなプロジェクトを構築できます。これはRubyプラットフォームにフロントエンドのパッケージ管理をもたらし、小さな習熟曲線をもたらします。.

    4. RequireJS

    RequireJSには特別なものがあります。それは主にJSツールセットだからです。それはのために使用することができます Nodeモジュールを含むJSモジュールを素早くロードする.

    RequireJSはできます 必要な依存関係を自動的に検出 あなたが使っているものに基づいているので、これはC / C ++における古典的なソフトウェアプログラミングに似ているかもしれません。.

    このトピックに関する興味深いGitHubディスカッションと、それが現代のWeb開発者に提供する価値を見つけるでしょう。 webpackのような他のJS管理ツールが登場しても、RequireJSは本番環境でも動作します。そしてそれがあなたのために働くならば、それが重要なすべてです.

    5.ジャム

    JamJSでは、ブラウザベースのパッケージ管理が新しい形で提供されています。これはRequireJSに似た自動管理機能を持つJavaScriptパッケージマネージャです。.

    あなたの依存関係はすべて 追加と削除を可能にする単一のJSファイルにまとめられます。 すぐにアイテム。加えて、これらはあなたが使用している他のツールに関係なくブラウザで更新することができます(RequireJSのように).

    ライブラリはターミナルを通じて最新バージョンに基づいて更新されます。各プロジェクトは 最適化されたコンポーネントで自動的に作成された に基づく あなたの要望. JamはGitHubで無料で、時間があれば一見の価値があります。.

    6.ブラウザ化

    たとえそれが彼らの典型的なワークフローの一部でなくても、ほとんどの開発者はBrowserifyを知っています。これは必要なモジュールとライブラリを束ねて最適化するもう1つの依存関係管理ツールです。.

    これらのバンドルは ブラウザでサポートされています それはあなたができるということです プレーンなJavaScriptでモジュールをインクルードおよびマージする. 必要なのはNPMだけで始めてからBrowserifyで動かすことです.

    このイントロチュートリアルをチェックして、ブラウザでNodeを管理する方法を確認してください。無料のGitHubでホストされている長いBrowserifyハンドブックもあります。このアイデアは、これらすべてのNodeツールをブラウザーに組み込み、Browserifyでプロセスを自動化することで時間を節約することです。.

    7.マントリ

    まだ成長の初期段階にあるMantriJSは、中レベルから高レベルのWebアプリケーション用の依存システムです。依存関係は名前空間を通して管理されます。 衝突を回避し、乱雑さを軽減するために機能的に編成されています.

    執筆時点でMantriは現在v0.2.2です。完全に オープンソース そして 依存関係の大規模なバンドルを必要とする、より複雑なWebアプリケーション用に構築された. Mantriは、モジュール式プログラミングの慣例に従うことを目指しており、開発者を同じ道に導くことを望んでいます。.

    8.ヴォロ

    プロジェクト管理ツールvoloは、プロジェクトの作成、ライブラリの追加、ワークフローの自動化を行うことができるオープンソースのNPMリポジトリです。.

    ヴォロ Node内で実行され、プロジェクト管理のためにJavaScriptに依存している. インストールプロセスと一般的な使用法を説明する簡単な紹介ガイドがGitHubにあります。たとえば、次のコマンドを実行したとします。 ボロクリエイト あなたはHTML5 Boilerplateのような任意のライブラリを添付することができます.

    しかし、新しいプロジェクトを作成する以外にも、 古いプロジェクト用のライブラリを追加/更新する. Voloはフロントエンド開発に必要なものすべてに結びつきます。 voloの設計目標を調べて、実際のプロジェクトでどのように機能するかを確認してください。.

    9.エンダー

    エンダーは “ライブラリなしライブラリ” そして、あなたがオンラインで見つけることができる最も軽いパッケージマネージャのうちの1人です。それは開発者がすることができます JSパッケージを検索してコマンドラインからインストール/コンパイルする. エンダーは “NPMの妹” 開発チームによる.

    当然のことながら、Enderフレームワーク全体がGitHubから無料で入手できます。それはあなたが助けるためにあなたがインストールする単なるツールです ローカルプロジェクト用のフロントエンドJavaScriptフレームワークの使用を管理する. すべてがフロントエンド開発者のワークフローのための最大限の可能性を容易に実行するためのものです。.

    EnderのメインWebサイトには質の高いドキュメントがありますので、興味がある場合は一目でわかります。.

    10.ピップ

    Pythonの依存関係をインストールするためのお勧めの方法はpipです。このツールはPython Packaging Authorityによって作成されたもので、Python自体とまったく同じように完全にオープンソースです。.

    大部分のPython開発者はDjangoチームを含む依存関係のためにpipを推薦します。 Pythonを使い始めたばかりか、バックエンド開発で一貫して使用しているかにかかわらず、これはツールボックスに含めることができるパッケージマネージャです。.

    11.作曲家

    ComposerはNPMと非常によく似たパッケージマネージャですが、PHPライブラリにのみ焦点を当てています。 Laravelなどの大規模なPHPフレームワークを含むPackagistへの依存関係のリストを見つけることができます。.

    もし あなたはPHP開発者です どんな種類のものでも、私は真剣にComposerを調べることをお勧めします。それは 始めるのは簡単だが合うのは難しい あなたのワークフローに。しかし実際にはPHP開発プロジェクトにとっては定番となるでしょう.

    これは時間の経過とともにさらに大きくなる可能性がある多用途のツールです。 Plus NPMはComposerと組み合わせて、すべてのPHP / JSプロジェクト用のフロントエンド+バックエンドの依存関係管理システムを作成することができます。.

    まとめ

    これらの依存関係マネージャの多くが、同様の特性を持つ同様の特性を持っていることは明らかです。いくつかはに構築されています 別の問題を解決する また、互いに組み合わせて実行することもできます(つまり、ComposerとNPM)。.

    依存関係管理の主題は、新しい開発者にとっては難しい場合があります。できるだけ多くのことを学ぶために、これらのツールの1つを選び、徹底的に調査することをお勧めします。小さなWebアプリケーションを構築して、依存性管理が便利な理由を学んでください。.

    これらのツールをワークフローに適用する方法を学んだ後は、元に戻すことを検討しないでください。.