🎯Raio-X do Marketing Digital: Tendências e desafios 🚀

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

Publicado em 01/02/2018

Atualizado em 03/06/2024

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).

Tá com pouco tempo? Clica no play e ouça toda o conteúdo. 😉

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

$ php composer.phar

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.

$ mkdir teste-composer
$ cd teste-composer

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.

$ touch composer.json
$ subl composer.json

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

$ vim composer.json

Vamos escrever o seguinte e salvar:

{
    "require": {
        "slim/slim": "^3.0"
    }
}

Agora vamos dentro da pasta rodar o seguinte comando

$ php composer.phar install

Essa será a saída

saida slim composer 2

E a estrutura de diretórios ficará assim:

saida teste composer

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.

O que você achou deste conteúdo?

O que você achou deste conteúdo?

Morvana
Morvana Bonin
Full-Stack Developer focada em Backend.
Morvana
Morvana Bonin
Full-Stack Developer focada em Backend.

Compartilhe esse conteúdo com alguém que possa gostar também

Receba todo mês conteúdos
incríveis como esses para
seguir evoluindo

Conteúdos relacionados

Ataque DDoS é uma das ameaças mais temidas por quem tem um site na internet. Imagine anos de investimento para construir a credibilidade de uma presença digital, para ver seu site sendo afetado por um ataque desse tipo.  Para se ter uma ideia, o Brasil pelo 10º ano consecutivo, é o líder do ranking de...
Você sabe o que é spyware? Esse tipo de software malicioso é uma das maiores ameaças à segurança digital atualmente. O tema “spyware” é cada vez mais relevante à medida que os ataques continuam a crescer em número e sofisticação.  Em um mundo onde a maioria das pessoas confia em dispositivos digitais para suas atividades,...

Mensagens para você