Composerとは
更新日 : 2019年12月20日
PHPでのアプリケーション開発にComposerはかかせません。
Composerとは、PHPのライブラリ・パッケージ依存管理ツールです。
欲しいライブラリやパッケージのインストールができ、その際にそれらの依存するライブラリ及びパッケージについても自動でダウンロードしてくれます。
公式サイトはこちらになります。
Composerの必要性
PHPのアプリケーション開発において、ライブラリやフレームワークを利用して開発する際に、Composerが必ずといっていいほど利用されます。
なぜこのようなライブラリ依存管理ツールが必要なのでしょうか。
逆にこのComposerがない場合、どのようにライブラリをインストールしたり、開発していくのかを考えていきましょう。
あるプロジェクトを立ち上げいざ開発するという際に、必要なライブラリが複数あることが多いため、どのライブラリのどのバージョンを利用するかを書類として残し、他の開発メンバーには書類を見ながらそれらのライブラリなどを個別にインストールさせる必要があります。
開発する際にこのような開発環境を構築するのにメンバーごとにこのような手間をかける必要があり、効率が悪いです。また、人間が手動で個別にインストールするため、インストールするべきライブラリを間違えてしまうことも考えられます。
さらに、あるライブラリを利用して開発する際に、その利用するライブラリ自体が別のライブラリに依存する場合があります。
このような問題を解決するために、Composerがあります。
Composerを利用することで、インストールするべきライブラリをcomposer.json
ファイルに書き込んでおき、特定のコマンドを実行するだけで、必要なライブラリを自動でインストールしてくれます。また、そのライブラリが別のライブラリに依存している場合、その依存関係も解決してくれます。
ライブラリの場所
Composerがインストールする際に利用するのがPackagistというものです。
ここには世界中の人や組織が開発したPHPのライブラリが置かれ、ライセンスに応じて、ダウンロードして使うことができます。
ComposerはこのPackagistから必要なライブラリをダウンロード、インストールします。
開発者はインストールしたライブラリを使って開発を進めます。
まとめ
Composerについての簡単な説明をしました。
実際に使ってみないとピンと来ないと思いますが、開発するプロジェクトが依存するライブラリやフレームワークを自動でインストールしてくれるツールだと理解しておきましょう。
Composerのインストールに関してはmacOS版インストール方法・Windows版インストール方法を参照してください。