NOTÍCIA

PHP Experience 2019: Livre-se dos erros – análise estática em PHP

Será que realmente é preciso escrever testes para cada linha de código? Nesta apresentação do PHP Experience 2019, Marcela Godoy traz a resposta.

PHP Experience 2019: Livre-se dos erros – análise estática em PHP
Imagem: Redação iMasters

Depois da apresentação de Matheus Gontijo, foi a vez da Engenheira de Software, Marcela Godoy, tomar conta do palco e falar sobre análise estática em PHPPHP44 conteúdosPadronizando seu código com PHP CS FixerDev (Back & Front) · mai 2019Docker de imagem. Para rodar projetos PHP em menos de 30 segundosDev (Back & Front) · jan 2026PHP 7.3: conheça as novidades desta versãoDev (Back & Front) · abr 2019Ver tudo em Dev (Back & Front) . Se o público presente tinha alguma dúvida sobre a necessidade de escrever testes para cada linha de código, ela foi esclarecida nesta palestra.

Para dar início à sua apresentação, Marcela fez a seguinte pergunta ao público:

  • “Quem aqui usa Análise Estática?”

Em seguida, trouxe uma definição rápida das linguagens Java e PHP:

“Basicamente, o Java tem um outro programa que pega o código gerado e analisa se ele faz sentido. Essa análise é feita antes da execução da aplicação.”

“O PHP é o que chamamos de linguagem interpretada. Ele não possui um interpretador que analisa a linguagem antes de ser executada.”

Após o rápido resumo das linguagens, ela trouxe um assunto que é bastante comentado na comunidade: a necessidade de blindar o código. O problema é isso que consome tempo e gera gastos. Segundo ela, a solução para esse dilema é a Análise Estática.

Análise Estática

Análise Estática é um método de depuração da aplicação através da análise de código, sem a necessidade de execução do mesmo. Entre as principais características, a Engenheira apresentou três características principais:

  • Verificação por Estilo
  • Verificação por Boas Práticas
  • Verificação por Bugs

Saber o que é Análise Estática não basta. Se você está se perguntando qual é a necessidade usar análise estática, fique tranquilo, Marcela apresentou a resposta de forma bastante clara.

Segundo ela, a abordagem pode reduzir de 5% a 30% os defeitos do código. Outra vantagem é desenvolver uma melhor aprendizagem de melhores práticas entre os desenvolvedores.

Além disso, ela reforçou que se corrigirmos falhas logo no início, poderemos disponibilizar mais rapidamente no mercado e concluiu dizendo que tudo isso pode ser incluído em uma Integração ContínuaCI/CD23 conteúdosCI/CD Mobile: o caos invisível que separa times comuns de times de alta performanceDev (Back & Front) · abr 2026Lambda: implementando com GitLab CI/CD e Terraform para Integração SFTP, S3 e Databricks em GoDev (Back & Front) · nov 2023Publicando sua aplicação Web Python no WebApp do Azure e configurando o CI/CD da sua aplicaçãoDevSecOps · abr 2019Ver tudo em DevSecOps .

“Análise Estática não é o único meio de se obter um bom código. Utilizar somente análise estática não basta!”

Algumas alternativas que podem complementar o time de análises foram apresentadas. Uma delas foi o Code Review, interessante para analisar a lógica do negócio e melhor ainda for usado em conjunto com a análise estática.

O cenário dos sonhos, segundo Marcela, seria a aplicação de um code review, juntamente com testes unitários e análise estática.

Para encerrar sua apresentação, Marcela apresentou duas ferramentas para Análise Estática:

PHP CodeSniffer

Vista como uma ferramenta essencial no desenvolvimento, o CodeSniffer realiza a análise dos padrões de código (PSR-1 e PSR-2) e ajuda com a produção de código limpo e organizado.

PHP Stan

O PHP Stan, por sua vez, atua mais na existência e acessibilidadeAcessibilidade11 conteúdosO que é Acessibilidade Web e como tornar seu site mais acessívelDev (Back & Front) · mar 2019Design para veteranos digitais: acessibilidade para nós mesmosProduto & UX · jan 2020Dicas de Front-End para usabilidade, acessibilidade, performance e responsividadeProduto & UX · fev 2025Ver tudo em Produto & UX a métodos e funções e conta com variáveis respeitando escopos e duplicações de código.

Matérias especiais e reportagens conduzidas internamente pela Redação iMasters. Acompanhe no Twitter @imasters e no Instagram/Threads @portalimasters

Ver perfil