Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
ArleiPacanaro authored Jan 30, 2024
1 parent c292f43 commit 2f6ad5e
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
<p><b>Spring WebFlux</b>: Foi um requisito técnico definido no escopo do projeto, porém é fantástico desenvolver aplicação fora do padrão convencional onde temos um fluxo bloqueante que espera as ações acontecerem para liberar aquele recurso da thread, ao passo que no fluxo não bloqueante após a requisição a thread já é liberada e o Web Flux faz todo o controle para a resposta, quebrando paradigma da programação convencional, existe um manifesto para ser assinado, sugerimos que todos pesquisem mais sobre o tema assinem.</p>
<p><b>MongoDB</b>: É um dos bancos que suportam a programação reativa, como Cassandra e Redis. Porém além disso já usamos em projetos anteriores e se trata de um banco NOSQL , ou seja, que gerencia Documentos e não tabelas relacionais como as utilizadas nos conceitos mais difundidos, em nosso projeto anterior, expusemos diversas vantagens e desvantagens como o conceito de ACID para banco de dados, mas as vantagens em nosso modo de ver possuem um peso maior na nossa decisão, entre elas destacamos a escalabilidade horizontal com clusters que nos deixou verdadeiramente encantados. Na nossa aplicação usamos o Atlas MongoDB que é uma Cloud e podemos optar por diversas formas de utilização dos recursos computacionais como ServerLess, backups e até a escalabilidade de forma automática, nos testes integrados que implementamos poderiamos ter usado um banco em memória, mas optamos pelo MongoDB para uma garantia mais efetiva dos testes e neste caso usamos uma imagem docker, sem a necessidade de instalação client.</p>
<p><b>JUnit</b>: É um framework open-source para construção de testes automatizados em Java, essencial para o desenvolvimento utilizando os conceitos de TDD, em conjuto com o Mockito que cria Fakes para nossos testes unitários, utilizamos em todas nossas classes de testes e com isto atingimos mais que o minimo de 80% de cobertura de testes em nosso código.</p>
<p><b>WebTestClient</b>: é um aplicativo cliente que opera em um navegador da web. Ele permite que os usuários acessem serviços e recursos baseados na web por meio de uma interface de navegador. No nosso caso iriamos usar o MockMvc porém para aplicações reativas ele não funciona e optamos por esta, pois além da facilidade de uso , ela não necessita que nossa aplicação para os testes unitários esteja em execução e utilizamos em conjunto com o Mockito e AssertJ para os testes unitários.</p>
<p><b>WebTestClient</b>: é uma aplicação cliente que opera em um navegador da web. Ele permite que os usuários acessem serviços e recursos baseados na web por meio de uma interface de navegador. No nosso caso iriamos usar o MockMvc porém para aplicações reativas ele não funciona e optamos por esta, pois além da facilidade de uso , ela não necessita que nossa aplicação para os testes unitários esteja em execução e utilizamos em conjunto com o Mockito e AssertJ para os testes unitários.</p>
<p><b>SonarLint</b>: é um software detector, em tempo real, de códigos fedidos – que geram dificuldades de manutenção , bugs e vulnerabilidades. Foi muito importante a sua utilização para termos uma escrita correta e segura, aplicamos em todas as classes do projeto com exceção as de testes. </p>
<p><b>CheckStyle</b>: é um analisador estático de código para checar se o código fonte está de acordo com as regras de codificação, este software nos ajudou a atendermos os requisitos da utilização de boas práticas em nosso código.</p>

Expand Down

0 comments on commit 2f6ad5e

Please sign in to comment.