30代専業主婦の独学エンジニア挑戦ブログ

実務未経験の30歳の専業主婦が独学でエンジニアを目指すブログです

「パッケージマネージャー」とは?

勉強記録

今週から写真共有アプリの復習に入っています。
復習のスケジュールとして、[午前中は自分で復習、午後は復習した箇所をSEである夫に解説する] という流れです!

夫からは容赦なく質問が・・・(笑)自分の知識が曖昧だった点がいくつかあったので、質問されてうまく答えれなかった内容をまとめます。

パッケージマネージャーとは何か

今回、npmというパッケージをインストールして使っています。
npmはNode.jsのパッケージマネージャーです。

そこで夫から「パッケージマネージャーってなに?」との質問がありました。

パッケージマネージャーとは

ライブラリのインストールと管理をするもの。
ライブラリとは便利なプログラムの部品を集めたファイルのこと。どんな言語でも使うときにまずライブラリをインストールしなければならない。

パッケージマネージャーは、コンピュータに何のソフトウェアがインストールされたかを記録する。
新しいソフトウェアのインストール・新しいバージョンへのソフトウェアの更新・以前インストールしたソフトウェアの削除を容易に行えるようにする。

なぜパッケージマネージャーが必要なのか

システムで使うライブラリのバージョンを明確に固定したいから。
明確に固定しないと、バージョンによってはシステムが動かない可能性もあるから。


(実際に今回写真共有アプリを作っていて、PHPのバージョンの違いによりエラーが出てしまうというケースに遭遇しました)

ロックファイル

インストールしたいものとそのバージョンを書いたファイル(ymlやjson)
インストールされたものとそのバージョンを記録したファイル(ロックファイル)がある。

ロックファイルは実際にインストールしたバージョンを記録するもので、リビジョンまで格納している。