Mais de 8 anos se passaram desde o surgimento do produto PVS-Studio e, durante todo esse tempo, implementamos novas regras de diagnóstico. E não vamos parar. Se você estiver preocupado com perguntas, perdemos a coragem ao longo dos anos e o PVS-Studio parou de se desenvolver, o gráfico no artigo removerá essas perguntas. O analisador está se desenvolvendo ativamente e a taxa de desenvolvimento apenas aumenta ao longo dos anos.
No momento da redação deste artigo, o PVS-Studio implementou 669
diagnósticos , muitos dos quais são complexos. Por exemplo, não vemos razão para perseguir quantidade e criar dois diagnósticos separados para os casos: a condição é sempre falsa, a condição é sempre verdadeira. Alguém faz o mesmo, alguém divide esses diagnósticos em vários. Por exemplo, você pode encontrar ferramentas nas quais esses diagnósticos são divididos: sempre uma expressão booleana falsa, um ponteiro nulo é usado como condição e assim por diante. Portanto, o número de diagnósticos em si não significa nada e, além disso, não vale a pena comparar diferentes analisadores com base no número de diagnósticos. Mas é interessante ver como o analisador PVS-Studio evoluiu ao longo do tempo. E para isso, decidi criar uma linha do tempo para o surgimento de novos diagnósticos.
Ter uma ideia com um cronograma era muito mais fácil do que implementar. Não tínhamos sinal, quantos diagnósticos havia nesta ou naquela versão do PVS-Studio. De alguma forma, mesmo ninguém jamais pensou em começar a escrever esses valores. Eu tive que usar engenhosidade e trabalho duro.
Nosso site possui uma
lista de todas as alterações que ocorreram nos lançamentos do PVS-Studio. Incluindo, os diagnósticos adicionados estão listados lá. Pedi ao meu colega Nastya que conduzisse uma pesquisa arqueológica da lista de alterações e anote as datas de lançamento, bem como o número de diagnósticos adicionados. Uma tarefa simples, mas cuidadosa. Nastya, obrigado pela ajuda. Então, aqui está o cronograma resultante.
No gráfico, você pode observar 2 rajadas. O primeiro surto remonta ao final de 2015 - o início de 2016 e está associado à adição do suporte ao idioma C #. O segundo aumento refere-se ao final de 2018 - início de 2019 e está associado à implementação do suporte à linguagem Java, bem como ao início do trabalho de suporte ao padrão MISRA.
De fato, o terceiro surto começa a se formar, o que ainda não é perceptível no gráfico. Após o primeiro lote de diagnóstico MISRA, fizemos uma pausa e agora somos novamente ativados nessa direção. Portanto, um novo aumento na atividade deve aparecer no gráfico, a partir de meados de 2019.
O gráfico mostra que o desenvolvimento do analisador PVS-Studio está em ritmo acelerado. Além disso, se até o final de 2015 o desenvolvimento era muito linear, começaram a aparecer "saltos". Devido aos “saltos”, o gráfico passou a assumir uma forma não linear e, possivelmente, no futuro será possível interpolá-lo com uma parábola.
Como você pode ver, estamos cheios de energia e entusiasmo para desenvolver o analisador de código PVS-Studio, oferecer suporte a novas versões de compiladores, adaptar plugins às versões mais recentes do Visual Studio / SonarQube / IntelliJ IDEA. Use o PVS-Studio e torne seu código mais confiável, melhor e mais seguro.

Se você deseja compartilhar este artigo com um público que fala inglês, use o link para a tradução: Andrey Karpov, Anastasiya Mozaleva.
Gráfico PVS-Studio de Desenvolvimento de Habilidades de Diagnóstico .