Pular para o conteúdo

Escrever uma biblioteca

Do primeiro arquivo ao pacote publicado — estrutura, contrato, versão, testes e registro.

Uma biblioteca é um projeto com uma diferença que muda tudo: outra pessoa vai depender dela. O que num programa é detalhe interno — o nome de uma ação, a ordem de um parâmetro, o formato de um retorno — vira promessa.

Esta seção é o caminho inteiro, na ordem em que ele acontece.

Em trinta segundos#

bash
dataforge init minha-lib && cd minha-lib

# escreva src/main.df, com 'relay' no fim
dataforge check .
dataforge test tests/

dataforge pack                      # gera dist/minha-lib-1.0.0.tar.gz
dataforge publish --registry=../registro

As quatro bibliotecas deste repositório#

Elas existem como referência de quem for escrever a sua — e como prova de que o gerenciador funciona ponta a ponta:

PacoteO que faz
`validador`CPF, CNPJ, e-mail, CEP e esquema de formulário
`tabela`saída tabular para terminal
`datas`datas em pt-BR, com feriados
`cofre`configuração em camadas

As quatro somam 46 testes, e o código de cada uma é curto o bastante para ser lido inteiro.

O que distingue uma biblioteca de um programa#

ProgramaBiblioteca
quem decide a entradavocêquem usa
renomear uma açãoum grep e prontoquebra todo mundo
erro sem tratamentoaparece para vocêaparece na aplicação de outra pessoa
efeito no topo do arquivoaceitávelinaceitável — roda no adopt de quem importa
dependência novasua escolhavira dependência de todos os seus usuários
o testeprova que funcionaé a documentação do contrato