Skip to content

raulpe7eira/calculator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Calculator (vlab for http://investtools.com.br/)

Um pequeno projeto para testar minhas habilidades.

frontend-scshot

Desafio

...

Criar uma simples calculadora, como a encontrado no sistema operacional, utilizando React.

...

Solução

Instalação

Pré-requisitos

Ter instalado localmente (apenas p/ Desenvolvimento e Teste):

Instalando dependências

$ git clone https://github.com/raulpereira/calculator.git
$ cd calculator
$ yarn

Subir & Rodar

Ambiente de desenvolvimento

$ yarn start

dsv-scshot

Ambiente de teste

$ yarn test .

tst-scshot

Ambiente de produção

Acesse => https://calculator-rp.herokuapp.com/ 👏

Considerações

Plataforma

Node.js c/ Create React App: A escolha da plataforma foi determinada pelo desafio e o uso do módulo de criação de aplicativos c/ React foi para agilizar a configuração do ambiente.

Frontend

HTML + CSS + ES6 (c/ React): A idéia era usar todo o poder de componentização e gerenciamento de estado que o React possui, para criar a calculadora.

Testes

Jest: Era a ferramenta instalada como padrão do ambiente React criado pelo Create React App, fiz apenas 4 testes, para verificar como funciona, mas está longe de cobrir todo código escrito.

cov-scshot

Servidores de produção

Heroku (PAAS): Escolhido por ter suporte grátis para aplicações Node.js, além de ter uma boa integração com o GitHub.

Conclusão

Tinha pouco tempo para me dedicar ao desafio, escolhi usar o desafio para estudar React, pois não havia tido contato até então, todo a solução foi baseada no Live Coding apresentado por Michael Jackson, isso poupou um tempo considerável para criação do CSS, que utiliza o Flexbox, modo layout, para determinar a localização de cada componente no página. Estruturei o código em pacotes separados e não em um arquivo só como apresentado no vídeo, assim a manutenção fica melhor, porém ainda da para estruturar mais o código, pois o javascript principal (Calculator.js) ainda esta bem grande e com muita responsabilidade. Utilizar o command pattern deve ser um caminho, isso vai facilitar o teste também.

Gostei muito de conhecer o tão famoso React, vou estudar mais sobre todo seu ecossistema, mas o pouco que vi já foi bem gratificante, sem dúvida resolve muita coisa que antes dava um belo trabalho.

AVANTE! 💪

About

Laboratório de Validação de Conhecimento para Investtools

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published