# O que é Refactoring?

É o processo de tornar a estrutura do código dentro do software mais organizada e eficiente sem alterar seu comportamento externo.

## Definição
Refatorar é como renovar o encanamento de um prédio ou alterar a localização de itens para torná-los mais úteis, sem danificar a aparência externa. Não há alteração no funcionamento do software, mas a legibilidade do código aumenta e fica mais fácil adicionar novos recursos no futuro. É um processo de limpeza que deve ser feito regularmente para reduzir o débito técnico.

## Como funciona
Blocos de código desnecessários são excluídos, funções complexas são divididas em partes mais simples e nomes de variáveis ​​ficam mais compreensíveis.

## Onde é usado
É aplicado nas etapas de revisão de código dos processos de desenvolvimento de software.

## Costuma ser confundido com
Não deve ser confundido com adição de novos recursos ou correção de bugs; isso apenas melhora a qualidade do código.

## Perguntas frequentes
**Por que fazemos isso?**
Se o código estiver mais limpo, erros futuros serão evitados e o processo de desenvolvimento será mais rápido.


## Termos relacionados
- [Agentic Coding Tool](/pt/dictionary/agentic-coding-tool/)
- [Unit Testing](/pt/dictionary/unit-testing/)
- [Tech Stack](/pt/dictionary/tech-stack/)

## Ferramentas relacionadas
- [Continue](/pt/discover/continue/)

---
Fonte: TreScout Glossário · https://trescout.com/pt/dictionary/refactoring/
