A peça mais copiado do código Java em StackOverflow contém um erro

Enquanto girou para fora, a peça mais copiado do código Java em StackOverflow contém um erro que ninguém tenha notado por nove anos. Agora o autor trecho Andreas Lundblad, desenvolvedor de um Java no Palantir e um dos mais influentes membros da comunidade StackOverflow, descobriu o bug.

Back em um 2018 artigo científico, o Lundblad trecho foi reconhecido como o código Java mais copiado com StackOverflow, que foi usado em muitos projetos de código aberto.

“Este código foi copiado e implementado em mais de 6,000 Java projetos no GitHub”, – analistas calculado.

Este trecho foi originalmente Publicados como uma resposta a uma pergunta em setembro 2010. A ideia era convertido 123,456,789 bytes para um formato legível, Por exemplo, 123.5 MB.

Semana passada, Lundblad disse o blog que encontrou um erro no código: descobriu-se que após a publicação do artigo científico mencionou que ele percebeu que ele tinha convertido o número de bytes, em seguida,, e agora ele preparou uma versão corrigida do trecho.

“Em um estudo intitulado recente Uso e Atribuição de estouro de pilha de trechos de código em projetos GitHub, uma resposta que eu escrevi há quase uma década foi encontrado para ser o trecho mais copiado no Stack Overflow. Ironicamente ele passa a ser de buggy. Back in 2010 Eu estava sentado no meu escritório e fazer o que eu não deveria estar fazendo: golfe código e reputação perseguindo em Stack Overflow. Pessoalmente, eu não iria copiar esse trecho em código de produção ))”, - disse Andreas Lundblad.

Felizmente, o erro acabou por ser bastante trivial e, como um resultado, só poderia levar a pequenas imprecisões nas estimativas do tamanho do arquivo. Ele poderia ter terminado muito pior se o erro tinha provocado problemas de segurança. nesse caso, que poderia levar anos para corrigir todos os projectos que são vulneráveis ​​por causa deste bug, uma vez que muitos desenvolvedores não pensam em tudo sobre as possíveis consequências ao copiar código de outra pessoa de StackOverflow.

além do que, além do mais, muitas pessoas pretendem copiar o código sem atribuição e, na verdade, esconder de todos que introduziu o código não verificado no projeto.

Leia também: Especialistas têm dúvidas na eficácia do banco de dados CVE

Por exemplo, no outono deste ano, pesquisadores de segurança da informação calculou que no GitHub podem ser encontrados 2,859 projectos que utilizaram emprestado e fragmentos perigosamente vulneráveis ​​de código C ++ de StackOverflow. Os peritos identificaram e procurou por apenas 69 tais peças problemáticas de código sobre o passado 10 anos, e de fato, pode haver muitas mais tais erros.

Conselhos de um programador arrependido:

  • trechos de estouro de pilha pode ser buggy, mesmo se eles têm milhares de upvotes.
  • Teste todos os casos de ponta, especialmente para o código copiado do Stack Overflow.
  • Aritmética de ponto flutuante é difícil.
  • Do incluem a devida atribuição ao copiar código. Alguém pode simplesmente chamá-lo para fora nele.

Polina Lisovskaya

Trabalho como gerente de marketing há anos e adoro pesquisar tópicos interessantes para você

Deixe uma resposta

Botão Voltar ao Topo