「NuGet」を編集中
ナビゲーションに移動
検索に移動
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
− | '''NuGet'''(読み:にゅーげっと、ぬげっと)とは、[[オープンソース]]な[[ライブラリ]]などのプログラミング素材に特化した[[パッケージ管理システム]]である。かつては[[.NET Framework]] | + | '''NuGet'''(読み:にゅーげっと、ぬげっと)とは、[[オープンソース]]な[[ライブラリ]]などのプログラミング素材に特化した[[パッケージ管理システム]]である。かつては[[.NET Framework]]関連専用であったが、現在ではVisual C++などの他のプラットフォームもサポートしている。 |
== 発音 == | == 発音 == | ||
14行目: | 14行目: | ||
== 概要 == | == 概要 == | ||
− | NuGetは大雑把に言えば、[[Perl]]の[[CPAN]]や[[Python]]の[[PyPI]]、[[PHP]]の[[PEAR]]、[[Ruby]]の[[RubyGems]]などに相当するものであり、[[.NET]] | + | NuGetは大雑把に言えば、[[Perl]]の[[CPAN]]や[[Python]]の[[PyPI]]、[[PHP]]の[[PEAR]]、[[Ruby]]の[[RubyGems]]などに相当するものであり、[[.NET]]アプリケーションの開発者が[[オープンソース]]な[[ライブラリ]]を手軽に組み込めるようにするためのパッケージシステムである。 |
− | |||
− | |||
== 特徴 == | == 特徴 == | ||
− | + | NuGetがPEARやRubyGemsなどと大きく異なる点としては、PEARやRubyGemsでは導入したライブラリは基本的に共有ライブラリとして展開されるのに対して、NuGetではプロジェクト単位でローカルに展開されるようになっている。そのため、いわゆる[[OS]]の[[root権限]](管理者権限)が無くても利用することができ、またプロジェクトごとに異なるバージョンの同一ライブラリを使うなどといったことも簡単にできるようになっている。 | |
さらにプロジェクト単位で使用しているパッケージの一覧を「packages.config」というファイル(中身は簡単な[[XML]])に保持しており、この情報をもとに[[ビルド]]時に[[ライブラリ]]が見つからなければ自動的に[[インターネット]]越しに[[ダウンロード]]をおこない[[インストール]]することができる。これにより[[プログラマー]]の手を煩わすことなく開発環境を一発で復元することが可能となっているのも特筆すべき点である。 | さらにプロジェクト単位で使用しているパッケージの一覧を「packages.config」というファイル(中身は簡単な[[XML]])に保持しており、この情報をもとに[[ビルド]]時に[[ライブラリ]]が見つからなければ自動的に[[インターネット]]越しに[[ダウンロード]]をおこない[[インストール]]することができる。これにより[[プログラマー]]の手を煩わすことなく開発環境を一発で復元することが可能となっているのも特筆すべき点である。 | ||
− | + | このように本来は.NET向けのパッケージシステムであるが、プロジェクト単位で扱えという利点からか「[[ASP.NET]]のための」などという検閲を突破するための前置きを付けた[[jQuery]]などのJavaScriptライブラリをはじめ、アイコン集などの画像素材集や音声素材名目の自作楽曲やらを突っ込む面白外国人が大量に出現してカオスと化している。 | |
− | |||
− | このように本来は.NET向けのパッケージシステムであるが、プロジェクト単位で扱えという利点からか「[[ASP.NET]] | ||
なお、NuGet 2.5からは公式にネイティブな[[C++]]などの.NET以外のプラットフォームもサポートするようになった。 | なお、NuGet 2.5からは公式にネイティブな[[C++]]などの.NET以外のプラットフォームもサポートするようになった。 | ||
− | == 運営 == | + | === 運営 === |
NuGetプロジェクトは、[[マイクロソフト]]が出資する非営利団体である[[OuterCurve Foundation]]内のプロジェクトである。 | NuGetプロジェクトは、[[マイクロソフト]]が出資する非営利団体である[[OuterCurve Foundation]]内のプロジェクトである。 | ||
− | [[.NET Framework]]をはじめ[[Windows]]の世界に身を置く人々たちは[[オープンソース]] | + | [[OuterCurve Foundation]]は[[.NET Framework]]をはじめ[[Windows]]の世界に身を置く人々たちは[[オープンソース]]という文化に不慣れであるため、[[マイクロソフト]]が主導するかたちで強引に[[オープンソース]]の世界に誘うことを目的としているらしく、NuGetも[[オープンソース]]を推進するためのものなのでオープンソースではないサードパーティー製のライブラリは冷酷に排除される。 |
== 使い方 == | == 使い方 == |