Desenvolvimento de extensão de VS Code para a análise de complexidade de algoritmos

Visualizar/ Abrir
Data
2024-12-14Autor
Pan, Franco Brunetta
Orientador
Dorneles, Ricardo Vargas
Metadata
Mostrar registro completoResumo
Compreender como os algoritmos se comportam em termos de tempo de execução é essencial para otimizar o desempenho de software. No entanto, a análise teórica da complexidade não é fácil nem diretamente aplicada na prática, pois os desenvolvedores enfrentam desafios ao estimar a eficiência de seus códigos sem ferramentas adequadas. Para suprir essa necessidade, foi implementada uma extensão para o Visual Studio Code que analisa a complexidade de algoritmos, integrando-se diretamente ao processo de desenvolvimento de software. Este trabalho concentrou-se em desenvolver uma solução prática, após uma revisão teórica e avaliação de soluções existentes. Os resultados obtidos mostraram que a extensão consegue analisar estruturas básicas de controle de fluxo ao utilizar Abstract Syntax Tree (AST) e resultados mais assertivos por modelos de linguagem natural, fornecendo estimativas assintóticas corretas. A análise automatizada demonstrou ser eficaz, preenchendo a lacuna entre a teoria e a prática, e permitindo que desenvolvedores e alunos avaliem rapidamente a complexidade de seus algoritmos, chegando a cerca de 96% de acerto. A validação da solução desenvolvida confirmou que a análise integrada ao fluxo de desenvolvimento é não apenas viável, mas também benéfica, promovendo uma maior conscientização sobre a complexidade computacional e incentivando boas práticas de codificação, facilitando a aplicação prática dos conceitos teóricos de complexidade. [resumo fornecido pelo autor]