Composer Entendendo na Prática!
Você certamente já ouviu falar de composer, sabe o que ele é? Descubra mais sobre este gerenciador de dependências neste post.
Como dito anteriormente, ele é um gerenciador de dependências muito utilizado junto ao PHP. O trabalho dele é gerenciar tudo o que você utilizará em seu projeto. Sendo assim fica muito mais fácil migrar sua aplicação sem se esquecer de nada que ela depende.
Com só algumas linhas é possível definir tudo o que você precisará em sua aplicação. Ele se encarrega de baixar tudo o que você precisa e criar um autoloader que deixará tudo pronto para uso.
Quais os requisitos?
Apenas precisamos de uma instalação igual ou superior ao PHP 5.3.2
Como utilizar o Composer?
A primeira coisa a se fazer é fazer o download do .phar em seu local de desenvolvimento, no site do composer existe um tutorial de como fazer isso.
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && php composer-setup.php
Antes de começar…
Antes vamos compreender o básico. Para que o ele cumpra sua tarefa, foi necessário criar uma padronização que todos os frameworks e aplicações possam entender. E nada mais compreendido que o famoso formato json (que talvez até sua torradeira entenda).
Configuração do composer.json
A primeira coisa que devemos fazer é criar um arquivo chamado composer.json. Nele ficará toda nossa configuração e todas as dependências que iremos precisar.
Name: Nome da sua aplicação ou projeto
Description: Uma breve descrição de sua aplicação, o que ela faz, para que serve e o que mais achar necessário
Authors: Aqui cabe todos os créditos para os autores e desenvolvedores da sua aplicação
Require: Aqui entram todas suas dependências, tudo o que sua aplicação precisa e quais versões elas precisam para funcionar. Caso tenhamos alguma dependência que não corresponde com a versão específica da, será gerado um erro.
Está configuração acima, é uma configuração de dependências que teremos apenas, quais os requisitos que precisamos para rodar nossa aplicação.
Instalando os pacotes via Composer
Certo, nós já configuramos as necessidades que temos para rodar nossa aplicação. Agora vamos começar a instalar os pacotes que vamos utilizar em nossa aplicação.
O composer utiliza o Packagist como repositório, ele é praticamente como o github, lá você pode adicionar seus próprios pacotes e também utilizar os existentes.
Vamos imaginar que eu quero criar slugs para minhas urls ou para meus arquivos. Para tal tarefa utilizaremos o slug.php, um pacote criado por Kevin Le Brun. No mesmo lugar que definimos a configuração de requisitos mínimos para nossa aplicação iremos adicionar este pacote como um dos requisitos.
Neste exemplo estamos solicitando que seja usada a versão 2. alguma coisa. Caso já não tenhamos ela instalada, o composer irá fazer todo o trabalho de baixá-la para nós ao executarmos o próximo passo.
Instalando as dependências com o Composer
Depois de definirmos todas as configurações e informações da nossa app, vamos instala-las.
Na pasta raiz (onde também deve ser colocado o composer.json) vamos executar o seguinte comando: php composer.phar install
ele é responsável por fazer a leitura do nosso arquivo de configurações e instalar as dependências (caso não tenha já instaladas). O composer é bem semelhante à instalar uma librarie do php.
Se olharmos agora nossa pasta raiz do projeto temos os arquivos: composer.json (arquivo de configuração), composer.lock (arquivo gerado automaticamente quando a instalação e efetuada com sucesso), composer.phar (arquivo que foi baixado para rodar tudo) e uma pasta vendor, que é onde foi instaladas todas as dependências que o composer leu no arquivo de configurações.
Agora finalmente…
Agora nos finais, temos que carregar em nossa aplicação todos os pacotes que baixamos, para isso, o composer facilita muito a nossa vida, ele mesmo cria um autoload para carregar tudo facinho. Assim não temos que carregar um require() de dependência por dependência.
Agora é mão na massa! Só curtir e usar todas as funcionalidades que nossos pacotes oferecem.
Algumas informações úteis
O comando para instalar as dependências utilizando o composer é utilizado geralmente uma única vez, já que após instaladas nossas dependências, basta usá-las.
Caso você queira atualizar uma versão de dependência, ou adicionou/removeu uma do arquivo de configurações, basta executar o comando php composer.phar update.
que o composer cuidará de tudo para nós.
Talvez se você estiver usando uma versão muito antiga talvez seja necessário atualizar sua versão. Para isso, basta utilizar o comando php composer.phar self-update
Por fim
Este exemplo pode parecer bem simples, mas imagine que tenhamos um projeto com dezenas de dependências. Imagine o trabalho para baixar uma a uma, atualizar uma a uma, e rodarmos uma a uma (só de pensar já penso em mudar de profissão)
O composer já é muito bem aceito em praticamente todos os projetos, me atrevo a dizer que certa de 98% dos projetos novos que são desenvolvidos, utilizam o composer para gerenciar suas dependências.
Por fim, ficamos por aqui, caso tenha alguma dúvida, quer fazer alguma observação. Deixe um comentário e não esqueça de compartilhar o post. Até o próximo!