パッケージ管理ツールについて調べてみました。
というか先日「パッケージ管理ツールって何?」っていうお話があって、あれ?そういえばなんだろう、と思ったので主観的に調べてみました。
目次
パッケージ管理ツールなど
| 管理ツールの名前 | 言語とか | メモ |
|---|---|---|
| npm | Node.JS | めっちゃ便利。Node.JSはこれが無いと始まらない。バージョンとかで結構カオスとのこと。 |
| yarm | Node.JS | npmの早いやーつ。 |
| Bower | JavaScript | フロントエンド開発でつかう。最近見かけなくなってしまいました。 |
| Composer | PHP | packagist.orgを。新しい。まだなくても大丈夫。 |
| PEAR | PHP | 読み方は洋梨のペア。ちょっと前のPHPでめっちゃ使われてた。情報が多いので今でも使ってる人も多数。 |
| Openpear | PHP | PEARが堅いのでみんなでどしどし使えるようにしてくれたあれ。あまり知られてないのは悲しい。 |
| Homebrew | macOS | macOS用。一般ユーザでインストールするのが特徴。新しい。 |
| Mac Ports | macOS | Homebrewに立場を取られた感。rootで運用。 |
| Yum | CentOS | みんな大好きCentOS。 |
| Apt | Debian/Ubuntu | Debian系。派生コマンドが多くて混乱させちゃう子。 |
| Ports | FreeBSD | Linuxがrpmばっかりだった当時は革新的だった。makeするので遅いのが難点。 |
| pkg | FreeBSD | 10から採用。Linuxの波にもまれてコンパイル済みを配布するように。 |
| apk | Alpine Linux | DockerのLinux。aptとpkgとアンドロイドのあれとごっちゃになっちゃう。 |
| Maven | Java | プロジェクト管理ツール。 |
| Gem | Ruby | Nokogiriのバージョンで悩まされたことが何度か。 |
| pip | Python | ぴっぷ?easy_installってやつの強化版。 |
| CPAN | Perl | ひところのウェブだとかなり使われたイメージが。 |
ComposerとPEARについて
PEARは少し前に定番のPHPパッケージ管理ツールでした。

Google Trendsによると2013年に検索キーワード数が逆転したようですね。
Composerは最近のPHPではかなり使われているパッケージ管理ツールです。大体は packagist.org からパッケージを落としてくることができますが、それ以外にもオートロードやテスト系などのコマンド群の定義が行えます。
「パッケージ管理ツール」とフロント系
1990年代〜2000年代の頃は「パッケージ管理ツール」といえばPortsとかのOSのミドルウェアとかのパッケージを管理する、というイメージでした。
しかし最近だとnpmやComposerプログラミング言語用のライブラリ管理というイメージがありますね。
ただComposerにはコマンド集約機能もあり、「パッケージ管理ツール」の域を超えている印象もありますね。
JavaのMavenはプロジェクト管理ツールとのことで、
雑感
基本的には自分の使ったことのあるものをまとめてみました。
というかWikipediaにリストがありましたね。
https://ja.wikipedia.org/wiki/パッケージ管理システム
どうしても知っているパッケージ管理ツールがベースなので、違っているところがあったら教えてください。
