joubertredrat-tests / maxmilhas-teste-slim

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Teste MaxMilhas - Versão Slim Micro framework

Esta versão do teste foi programada usando o Slim Micro framework.

Execução

Para execução deste projeto, execute o comando abaixo.

docker-compose up

Ao final do processo de instalação, o projeto estará disponível em http://localhost:3000.

Endereços

Informações

O projeto foi desenvolvido usando abordagem de programação agnóstica a frameworks e conceitos de Domain Driven Design.

A camada de negócio está na pasta src/Application, sendo totalmente portável para qualquer outro framework ou sistema que utilize PHP 7.1 ou superior.

A camada de infraestrutura está na pasta src/App, sendo ela responsável por tratar a requisição, interação com a camada de negócio e retorno da requisição.

Para acesso a banco de dados, foi utilizado o componente PDO, do core do PHP.

Todo código fonte de src/Application e src/App estão em conformidade com as PSR-1 e PSR-2 e estão documentados no padrão PHPDoc.

Todo código fonte de src/Application foram codificados considerando type hint e return type.

Durante o desenvolvimento, foi necessário correção de uma biblioteca de terceiros, conforme pode ser conferido em adrianfalleiro/slim-cli-runner#8, porém, como a correção não foi aplicada a tempo da entrega do teste, existe um patch no composer para aplicar as devidas correções e manter o app funcionando.

Todo

A validação de um CPF válido está na model CpfBlacklist e CpfBlacklistEvent, porém, seria interessante desacoplar, criar um Value Object Cpf e atribuir a ele a responsabilidade por validar a string de CPF, tornando CpfBlacklist, CpfBlacklistEvent e outras implementações usuários de Cpf

Implementação de configuração externa por meio de yaml, tornando mais fácil edição de parâmetros do sistema.

About


Languages

Language:PHP 39.6%Language:JavaScript 37.6%Language:HTML 17.7%Language:CSS 5.1%