Introdução ao Composer: o que é, como instalar, como usar.


O que é o Composer?

O Composer é uma ferramenta para o gerenciamento de dependências em PHP. Ele permite que você declare as bibliotecas que seu projeto necessita e ele gerencia (instala / atualiza) elas para você¹.

Para quem já está familiarizado com outras linguagens como o Node, por exemplo, temos o npm que faz isso no Java, o Maven e ainda o Bundler, no Ruby. No caso do Composer do PHP, este foi fortemente inspirado pelos npm (Node) e o bundler (Ruby).

Para quem adotou o PHP como linguagem de aprendizado deve estar se perguntando o que é um gerenciador de dependências. Para explicar melhor, vou iniciar explicando o que são dependências de projeto.

O que são dependências?

São todos os artefatos (bibliotecas/ pacotes) de software ou de sistemas de terceiros que seu projeto utiliza para funcionar.

Para que serve o Composer?

Imagine que você tem o seu projeto e escolheu um framework, que é a abstração (captura) de funcionalidades comuns a várias aplicações. Para construção deste projeto, o framework passa a ser uma biblioteca do seu sistema e, provavelmente, dependa de outras bibliotecas para funcionar. É aí que entra o Composer fazendo sua “mágica”, já que é ele quem irá gerenciar essas bibliotecas que o seu projeto necessita. Ou seja, com ele você irá declarar essas bibliotecas e ele, por sua vez, irá achar quais as versões delas que seu projeto necessita e irá instalar elas em uma pasta chamada vendor.

A imagem² abaixo faz uma analogia melhor de como a ferramenta funciona.

Analisando a imagem temos o Fornecedor da Biblioteca (Library Publisher); a Biblioteca em si (Library), no caso as frutas e verduras na imagem; o Cliente (Library Consumer), Consumidor dessa biblioteca; seu projeto e o Packagist – que seria a feira com o anúncio dos fornecedores, a qual entraremos com mais detalhes em outro post sobre o assunto.

Até aqui vimos o que é o Composer e para que serve, agora vamos ver como instalá-lo e um exemplo simples.

Instalando o Composer

Requer o PHP na versão 5.3.2 ou superior para funcionar. Os passos de instalação da ferramenta a seguir são no sistema operacional Linux, caso o seu seja windows, recomendo a leitura da documentação.

Há duas formas de instalar, vamos a elas:

Localmente
Instalar localmente é apenas uma questão de executar o instalador “composer.phar” no diretório do seu projeto. Você pode ver as instruções de download através desse link³

O composer.phar é um binário de arquivo PHP que pode ser rodado em linha de comando arquivos.phar do PHP. Eles se assemelham com arquivos .jar do Java, ou seja, uma biblioteca na qual a aplicação é compilada.

Com o composer.phar no diretório do seu projeto, basta rodar o comando

Globalmente
A diferença nessa instalação é que você pode rodar o composer.phar de qualquer lugar que desejar. Você instala em um diretório no qual você possa acessar globalmente. Com isso é possível executá-lo sem precisar invocar o php

Usando o Composer

Para dar um exemplo simples, iremos fazer a instalação do Slim Framework. Vamos começar criando de diretório chamado teste-composer e depois acessar ele. Você pode criar da forma que achar melhor, abaixo listo os comandos criando a estrutura de teste em um terminal Linux.

Dentro deste diretório, vamos criar um arquivo chamado composer.json e abrir ele com o Sublime. Para quem não conhece, o Sublime é um editor de textos, um dos mais usados atualmente.

Já para quem está acostumado com Linux, pode abrir no editor Vim

Vamos escrever o seguinte e salvar:

Agora vamos dentro da pasta rodar o seguinte comando

Essa será a saída

E a estrutura de diretórios ficará assim:

Algumas informações que valem ressaltar é que, no caso do Linux, temos que cuidar as permissões na hora de executar alguns comandos, no meu caso eu usei o comando sudo (permite a usuários comuns obter privilégios de super usuário e executar tarefas administrativas permitidas apenas para o mesmo) apenas para executar o php composer-setup.php.

Desde quando foi lançado, em Março de 2012, o Composer vem crescendo e sendo utilizado em grande escala, isso porque ele supriu algo que o PHP não tinha (ou até tinha no caso do pear mas era difícil de configurar), de gerenciador de dependências. Hoje é difícil imaginar construir um projeto sem ele é quase como pensar em uma tarefa suicida.

Esse post foi apenas uma introdução do que é o Composer, mas existem muitas coisas a serem vistas e veremos mais detalhadamente algumas em futuros posts sobre.

Rodapé / Referências
[1] Tradução da introdução na documentação do site oficial do Composer
[2] Imagem retirada da palestra do Rafael Dohms – Composer The Right Way
[3] As instruções são da própria documentação do Composer e encontram-se em inglês

Gostou do texto? Fique por dentro de outros materiais do universo PHP no Blog da KingHost.

Resumo
Introdução ao Composer: o que é, como instalar, como usar
Nome do Artigo
Introdução ao Composer: o que é, como instalar, como usar
Descrição
O Composer é uma ferramenta para o gerenciamento de dependências em PHP. Ele permite que você declare as bibliotecas que seu projeto necessita e ele gerencia (instala / atualiza) elas para você. Para quem já está familiarizado com outras linguagens como o Node, por exemplo, temos o npm que faz isso no Java, o Maven e ainda o Bundler, no Ruby. No caso do Composer do PHP, este foi fortemente inspirado pelos npm (Node) e o bundler (Ruby).
Autor
Nome
KingHost
Morvana Bonin

Morvana Bonin

Desenvolvedora PHP e Python em KingHost
Full-Stack Developer focada em Backend.
Morvana Bonin

Últimos posts por Morvana Bonin (exibir todos)

Comentários

comentário(s)