Legibilidade e Complexidade ciclomática

Carly Christian
2 min readSep 22, 2024

Recentemente fazendo um code Review o Dev havia feito uma estrutura de seleção que era bem confusa. Aproveitei esse momento para falar de dois pontos que se complementam:
Complexidade ciclomática e legibilidade de código.

De forma simples, a estrutura de seleção resolve o problema mas existem formas melhores e piores de se implementar a solução e esses dois conceitos te ajudam a fazer essa escolha.

Uma menor Complexidade ciclomática e uma melhor legibilidade de código melhoram a manutenibilidade do software e o custo dele consequentemente. Por tanto, você pode decidir a solução com base neles.

Aqui vão algumas dicas que podem te ajudar a melhorar sua solução considerando esses dois pontos

1 — Ifs:
Evite Else e ifs dentro de ifs. Monte a estrutura de maneira que percorra o menor caminho possível e retorne o resultado o mais rápido possível sempre.

2 — Aninhamento ou recursividade:
Vai usar métodos, garanta que o nome deles é objetivo e claro.

3 — Strategy:

Utilize enum strategy. Enums com nomes objetivos e claros, associados a métodos abstratos ou interfaces são soluções robustas e eficazes. Essa é minha solução preferida, já utilizei e utilizo muito.

Aqui um repositório com exemplos -> https://github.com/CarlyOliveira/ctmaitsimplecode/blob/main/src/main/java/complexidadeciclomatica/ComplexidadeCiclomatica.java

Bem, é isso… Curtinho e direto ao ponto…

Bora dividir conhecimento que a gente multiplica…

Vlw flw

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Carly Christian
Carly Christian

Written by Carly Christian

Oi, eu sou o carly. Gosto de falar sobre varios assuntos e visões que tenho sobre o mundo, é isto.

No responses yet

Write a response