Uma atividade que demanda tempo em qualquer projeto é a instalação e manutenção de dependências, não trata-se apenas de baixar todas as bibliotecas jogar numa única pasta e sair usando, muitas vezes queremos atualizar essas bibliotecas para versões mais novas e como cada uma também é um projeto, possui suas dependências.
Atualmente existem diversos projetos que fazem a atividade de controle de dependências, no caso do PHP uma das mais usadas é o composer, um programa extremamente simples de ser usado e que pode lhe economizar muito tempo.
Primeiramente precisamos fazer o download do composer, seguem algumas formas:
Segundo, para descrever as dependências de seu projeto o composer utiliza um arquivo chamado “composer.json”, que nada mais é que um arquivo de texto com um objeto no formato json (leia mais sobre json aqui), mas sem muita enrolação mostro abaixo um exemplo de arquivo tendo como dependência apenas o monolog:
{ "require": { "monolog/monolog": "~1.11" } }
Neste caso estamos dizendo ao composer que queremos o projeto “monolog/monolog” presente no site do packagist com a versão mais recente e anterior a 1.22.1, matematicamente falando < 1.22.1.
Vamos ao exemplo, abra o terminal e execute o seguinte comando:
composer require monolog/monolog
Após o termino da execução, que fará a criação do arquivo e download das dependências do monolog, você verá uma estrutura semelhante ao que mostrei anteriormente.
Agora para teste vamos adicionar o framework Bootstrap ao nosso projeto, execute o comando abaixo:
composer require twbs/bootstrap
Novamente o composer atualizará as dependências de seu projeto e fazer o download das mesmas. Percebem a facilidade do seu uso ? Abrindo o arquivo “composer.json” você verá algo como o abaixo:
{ "require": { "monolog/monolog": "~1.11", "twbs/bootstrap": "~3.2" } }
Você também deve ter percebido que o composer criou uma pasta chamada “vendor”, é nesta pasta que são colocados os arquivos baixados.
Mas tem mais, o foco do composer é php e para tanto ele cria dentro da pasta “vendor” um arquivo chamado “autoload.php”, que nada mais é do que um arquivo de “require” de todas suas dependências, o que facilita bastante, já que com isso você precisa apenas adicionar o require desse arquivo que todas suas dependências estão carregadas.
O composer pode ser acessado via linha de comando ou terminal, portanto seguem alguns comandos que o composer utiliza:
Usando comando Composer
- composer install – Instala as dependências
- composer update – Atualiza as dependências
- composer require “pacote” – Cria,adiciona e instala o pacote
- composer dump-autoload – Atualiza o arquivo de dependências “autoload.php”
- composer selfupdate – Auto atualização do composer, irá baixar a versão mais recente
Com apenas estes comandos já é possível realizar a maioria das tarefas de controle de dependências, lembrando que o comando “composer update” faz tanto a adição como remoção de dependências, portanto não importa se você adicionou ou removeu linhas do arquivo “composer.json”, elas serão atualizadas.
Para mais informações acessem o site oficial do composer acesse o link abaixo: