「NuGet」の版間の差分
17行目: | 17行目: | ||
== 特徴 == | == 特徴 == | ||
− | + | NuGetがPEARやRubyGemsなどと大きく異なる点としては、PEARやRubyGemsでは導入したライブラリは基本的に共有ライブラリとして展開されるのに対して、NuGetではプロジェクト単位でローカルに展開されるようになっている。そのため、いわゆる[[OS]]のroot権限(管理者権限)が無くても利用することができ、またプロジェクトごとに異なるバージョンの同一ライブラリを使うなどといったことも簡単にできるようになっている。 | |
− | |||
− | |||
さらにプロジェクト単位で使用しているパッケージの一覧を「packages.config」というファイル(中身はXML)に保持しており、この情報をもとに[[ビルド]]時に[[ライブラリ]]が見つからなければ自動的に[[インターネット]]越しに[[ダウンロード]]をおこない[[インストール]]することができる。これにより[[プログラマー]]の手を煩わすことなく開発環境を一発で復元することが可能となっているのも特筆すべき点である。 | さらにプロジェクト単位で使用しているパッケージの一覧を「packages.config」というファイル(中身はXML)に保持しており、この情報をもとに[[ビルド]]時に[[ライブラリ]]が見つからなければ自動的に[[インターネット]]越しに[[ダウンロード]]をおこない[[インストール]]することができる。これにより[[プログラマー]]の手を煩わすことなく開発環境を一発で復元することが可能となっているのも特筆すべき点である。 |
2013年6月13日 (木) 06:29時点における版
NuGet(読み:にゅーげっと、ぬげっと)とは、オープンソースなライブラリなどのプログラミング素材に特化したパッケージ管理システムである。かつては.NET Framework関連専用であったが、現在は他のプラットフォームもサポートしている。
発音
英語での発音は「にゅーげっと」や「ぬーげっと」に近いと言われているが、MSDN上での日本語表記は「ぬげっと」である。少なくとも「なげっと」ではないらしい[1]が、細かいことを気にしても仕方がないのでどれでもよい。
荒れたスレにナゲット再び
〃. ̄. ̄.ヽ
|: : : |
| : : :|
ヽ._._./
概要
NuGetは大雑把に言えば、PerlのCPANやPythonのPyPI、PHPのPEAR、RubyのRubyGemsなどに相当するものであり、.NETアプリケーションの開発者がオープンソースなライブラリを手軽に組み込めるようにするためのパッケージシステムである。
特徴
NuGetがPEARやRubyGemsなどと大きく異なる点としては、PEARやRubyGemsでは導入したライブラリは基本的に共有ライブラリとして展開されるのに対して、NuGetではプロジェクト単位でローカルに展開されるようになっている。そのため、いわゆるOSのroot権限(管理者権限)が無くても利用することができ、またプロジェクトごとに異なるバージョンの同一ライブラリを使うなどといったことも簡単にできるようになっている。
さらにプロジェクト単位で使用しているパッケージの一覧を「packages.config」というファイル(中身はXML)に保持しており、この情報をもとにビルド時にライブラリが見つからなければ自動的にインターネット越しにダウンロードをおこないインストールすることができる。これによりプログラマーの手を煩わすことなく開発環境を一発で復元することが可能となっているのも特筆すべき点である。
このように本来は.NET向けのパッケージシステムであるが、プロジェクト単位で扱えという利点からか「ASP.NETのための」などという検閲を突破するための前置きを付けたjQueryなどのJavaScriptライブラリをはじめ、アイコン集などの画像素材集や音声素材名目の自作楽曲やらを突っ込む面白外国人が大量に出現してカオスと化している。
なお、NuGet 2.5からは公式にネイティブなC++などの.NET以外のプラットフォームもサポートするようになった。
運営
NuGetプロジェクトは、マイクロソフトが出資する非営利団体であるOuterCurve Foundation内のプロジェクトである。
OuterCurve Foundationは.NET FrameworkをはじめWindowsの世界に身を置く人々たちはオープンソースという文化に不慣れであるため、マイクロソフトが主導するかたちで強引にオープンソースの世界に誘うことを目的としているらしく、NuGetもオープンソースを推進するためのものなのでオープンソースではないサードパーティー製のライブラリは冷酷に排除される。
使い方
おすすめNuGet
NuGetギャラリーに掲載されている便利なライブラリを列挙する。
関連項目
参考文献
外部リンク
- NuGet Gallery - http://nuget.org/
- NuGet 開発拠点 - http://nuget.codeplex.com/