Análise do Código Fonte

Autor: Eugene Taylor
Data De Criação: 7 Agosto 2021
Data De Atualização: 1 Julho 2024
Anonim
Análise do Código Fonte - Tecnologia
Análise do Código Fonte - Tecnologia

Contente

Definição - O que significa Análise de Código Fonte?

A análise do código-fonte é o teste automatizado do código-fonte de um programa com o objetivo de encontrar falhas e corrigi-las antes que o aplicativo seja vendido ou distribuído.


A análise do código-fonte é sinônimo de análise estática do código, onde o código-fonte é analisado simplesmente como código e o programa não está sendo executado. Isso elimina a necessidade de criar e usar casos de teste e pode se separar de bugs específicos de recursos, como botões de cores diferentes do que dizem as especificações. Ele se concentra em encontrar falhas no programa que podem ser prejudiciais ao seu funcionamento adequado, como linhas de código causadoras de falhas.

Uma introdução ao Microsoft Azure e Microsoft Cloud | Neste guia, você aprenderá sobre o que é a computação em nuvem e como o Microsoft Azure pode ajudá-lo a migrar e administrar seus negócios a partir da nuvem.

Techopedia explica a análise do código fonte

A análise do código-fonte é basicamente a depuração automatizada de código. O objetivo é encontrar bugs e falhas que podem não ser óbvias para um programador. Destina-se a encontrar falhas como possíveis estouros de buffer ou uso desordenado de ponteiros e uso indevido de funções de coleta de lixo, que podem ser exploradas por um hacker.


Os analisadores de código funcionam usando regras que informam o que procurar. Com pouca precisão, um analisador pode emitir muitos falsos positivos e inundar o usuário com avisos inúteis, enquanto muita precisão pode levar muito tempo para ser concluída; portanto, tem que ser um equilíbrio.

Existem dois tipos de analisadores:

  • Interprocedimento - Detecta padrões de uma função para a seguinte, e esses padrões são correlacionados para que o analisador possa criar um modelo e simular caminhos de execução.

  • Intraprocedural - Concentra-se na correspondência de padrões e depende de que tipos de padrões o usuário está procurando.

Os analisadores interprocedurais são mais modernos e mais complexos. Bons exemplos disso são o Coverity, Fortify e a própria ferramenta centralizada da Microsoft PREfix.