Composer – O Pilar dos Serviços PHP Modernos

porLuis Augusto Moretto

Composer – O Pilar dos Serviços PHP Modernos

Gerencie Dinamicamente as Dependências de seu Projeto PHP com o Composer

Composer PHP APP Web service REST Mantis API
PHP COMPOSER

Introdução

Para aqueles que não conhecem,  o Composer é uma ferramenta para gerenciamento de dependências em PHP.

Ele permite que você declare as bibliotecas de seu projeto e ele gerencie (instale / atualize) para você dinamicamente. 

Para gerenciar as dependências de um projeto, usa um arquivo json. Este arquivo descreve todas as dependências e também possui alguns metadados.

Para cada biblioteca desejada, declara-se o nome e a versão necessária. AS bibliotecas ficam no Github para reuso.

Pode se dizer que o Composer  está para o PHP assim como o NPM esta para o Javascript.  

composer php gerenciamento de dependencias de bibliotecas
Dependências Composer.json

O que é uma biblioteca ou pacote

Uma biblioteca refere-se a um pacote que você pode instalar em seu aplicativo, como o Slim Framework ou o Mautic API, e um projeto se refere a uma aplicação real.

Lembre-se que: As bibliotecas podem ser dependências de outras bibliotecas ou projetos, mas um projeto nunca deve ser uma dependência de nada.

Versionamento das dependências

A especificação de versionamento define que as versões do pacote devem ser da forma “x.y.z”, com sufixos de estabilidade opcionais.

Dizemos que “x” é a versão principal, “y” é a versão secundária, e “z” é a versão do patch.

Isso é útil porque define um sistema de controle de versão unificado que todos entendem. 

A pasta vendor

Depois de criar o arquivo de dependências, será criada uma pasta VENDOR na raiz de seu projeto. Todos as bibliotecas ficam nesta pasta e são carregadas no arquivo vendor/autoload.php.

O arquivo é gerado automaticamente. Você deve incluir este arquivo na raiz de seu projeto para importar todas as dependências.

VENDOR AUTOLOADER.php Composer
autoloader.php

Integração com IDE

Para um ambiente de desenvolvimento mais produtivo é interessante integrar a ferramenta em sua IDE.   Assim é possível dentro da IDE gerenciar as dependências.

Composer na IDE integrado no Netbeans
Integrado na IDE

Dicas

Alguns comandos para você iniciar o gerencimento dinamico de suas bibliotecas PHP!

  • composer init abre um Wizard para criar o arquivo de dependências composer.json.

  • composer search phpunit vai pesquisar todas as bibliotecas com o nome phpunit. Após escolher a dependência correta, podemos utilizar o composer require . Esse comando por fim irá criar o arquivo de configuração .json e baixar todas as dependências para a pasta VENDOR de seu projeto.

Happy Coding! 😀