☁️ Hospedagem Cloud e VPS - Alta performance para seus projetos com desconto imperdível 💰

Kinghost | Blog

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

Publicado em 01/02/2018

Atualizado em 11/10/2023

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

Você pode até não perceber, mas as aplicações web já se tornaram parte da sua rotina. Diariamente, você acessa informações, realiza negócios e se comunica por meio dessas aplicações. Isso mesmo, desde plataformas de e-commerce que facilitam compras online até redes sociais que conectam bilhões de pessoas globalmente, as aplicações web desempenham um papel fundamental...
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...

📅 Aulão GRATUITO 🚀 Como VENDER MAIS na internet 💰

Mensagens para você