Empacote-se!

É verdade, mas ela está presa ao seu projeto, precisando utilizar o famoso copiar/colar quando necessário reaproveitar, e pode até conter alguma dependência que faça ela ser difícil de ser incorporada em um novo universo.Por conta da característica de total isolamento, o pacote é a solução ideal para reaproveitamento de códigos comuns em projetos, além do bônus de eventuais bugs necessitarem de correção apenas uma vez, e com um comando de atualização no gerenciador de dependências replicar a modificação em todos utilizadores.Criando um pacoteSem mais teorias, vamos colocar a mão na massa..Utilizarei para os exemplos deste artigo códigos escritos em PHP, a principal linguagem que trabalho atualmente, juntamente com seu gerenciador de dependências, o Composer.Saber sobre composer (ou gerenciadores de dependências) é essencial para o entendimento deste artigo..Caso ainda não conheça nada a respeito, sugiro o estudo prévio.Criaremos neste artigo um pacote simples para validação de dados, com a seguinte estrutura de arquivos:estrutura de arquivos de um pacoteEntendendo a imagem acima:Diretório srcNo diretório src teremos as classes que farão a ação que o nosso pacote se propõe, no caso, validar informaçõesDiretório testsDentro de tests, como o nome sugere, os testes dos códigos que criamos..Não é obrigatório, mas é altamente recomendado.gitignoreÉ o arquivo de ignore do git para possíveis arquivos que não precisam ser versionados..OpcionalREADME.mdREADME.md é o arquivo que irá conter a documentação do nosso pacote..Utiliza a sintaxe do markdown.composer.jsonÉ o arquivo mais importante (depois do código de src, é claro) para o nosso pacote funcionar..Contém os requisitos, palavras-chave, dependências e licença do pacote, entre outros.Abaixo um exemplo de composer.json válido para pacote:Linha 2 — Nome do seu pacoteLinha 4— Palavras-chaveLinha 7 — Requisitos mínimos para instalação e dependênciasLinha 10 — Dependências de desenvolvimentoLinha 13 — Namespace para autoload do composerLinha 18 — Namespace de desenvolvimento para autoload do composerDisponibilizando o pacoteO repositório oficial de pacotes do composer é o Packagist..É possível utilizar outros repositórios caso queira um pacote privado, ou simplesmente não utilizar o packagist, porém recomendo fortemente, pois é onde a maioria dos usuários fazem as buscas por soluções, e de quebra você colabora com a comunidade de desenvolvedores.Para publicar, primeiramente o código deve estar disponível em algum repositório git, como github, bitbucket, gitlab, etc.Em seguida, deve-se acessar o packagist, efetuar login e clicar em Submit, no canto superior direito.topbar do packagist.orgApós, colar a url do repositório e clicar em Check, e em seguida, Submit.Pronto!.O pacote está publicado.Instalando um pacotePara utilizar o pacote basta executar no terminal, no diretório do projeto onde o composer estiver disponível, o comando composer require NOME_DO_PACOTE, onde “NOME_DO_PACOTE” é o nome definido no composer.json, no nosso caso, lucastrindade/validation..No packagist é fornecido o comando para instalação de cada pacote..Após instalado, basta utilizar as classes do diretório src conforme a documentação do mesmo.O código gerado por este artigo está disponível no github..Clique aqui para acessar.Espero que tenham gostado.. More details

Leave a Reply