Skip to content

Refactor jbake#804

Open
NatanHugo2004 wants to merge 10 commits into
jbake-org:masterfrom
NatanHugo2004:refactor-jbake
Open

Refactor jbake#804
NatanHugo2004 wants to merge 10 commits into
jbake-org:masterfrom
NatanHugo2004:refactor-jbake

Conversation

@NatanHugo2004

Copy link
Copy Markdown

Mudanças Realizadas:

Classe Crawler

Na classe Crawler, o método Crawler foi modificado para ter sua complexidade ciclomática e cognitiva simplificada.

Antes

image

Depois

image

Classe AssciidoctorEngine

Na classe AssciidoctorEngine o método processHeader foi modificado para realizar operações mais atômicas, tendo em vista que ele fazia suscetivas operaões. sua lógica foi quebrada em métodos menores.

Antes

image

Depois

image

Classe Init

O método Run da classe Init foi modificado para reduzir o número desnecessários de ifs alinhados.

Antes

image

Depois

image

Classe Content Store

A classe Content Store estava sendo qualificada como god class pelas métricas, a refatoração criou uma nova classe Schema Manager para ser responsável por algumas das operações da Content Store. As métricas ainda apontam Content Store como God Class, mas o problema foi reduzido significativamente.

Antes (Métodos Presentes em Content Store que Foram Retirados)

image

Depois (Nova Classe Schema Manager)

image

Classe Renderer

A classe Renderer utilizava uma lógica de looping perigosa que mexia com variáveis de contagem do próprio loop, a lógica do for foi alterada.

Antes

image

Depois

image

@ottlinger

Copy link
Copy Markdown
Contributor

Would you mind changeing the language to English to allow more people to read your PR? :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants