Compartilhar via


Introdução ao desempenho de aplicativos do Windows

logotipo de Medida

O desempenho é um aspecto do desenvolvimento de software que se concentra em medir e melhorar o código. Depois de ler este artigo, você terá uma ideia melhor de: o que o desempenho implica, por que é importante para você e seus clientes e como começar a medir o desempenho do aplicativo.

O que é o desempenho do aplicativo?

O desempenho é a medida de como seu aplicativo usa efetivamente os recursos do sistema para fazer o que você o projetou para fazer. Ele aborda diferentes aspectos de como seu programa interage com o dispositivo subjacente. Isso pode incluir itens como:

  • Uso da CPU
  • Consumo de memória
  • Consumo de energia
  • Utilização de rede e armazenamento
  • Desempenho de animação

... e muito mais.

Todas essas propriedades diferentes têm um elemento de custo associado a elas: por exemplo, quanto de CPU meu aplicativo usa? Quanto da largura de banda do usuário ele consumirá? Quão rápido essa página específica do meu aplicativo carrega? A medida é, portanto, central para o desempenho.

Por que é importante?

Os usuários esperam desempenho como uma propriedade fundamental do software que usam. Eles querem que seus aplicativos sejam responsivos e façam uso eficiente dos recursos do sistema. Aplicativos que apresentam desempenho ruim causam frustração, o que pode levar à redução do envolvimento do usuário. Para fornecer aos seus clientes a melhor experiência possível, é crucial, portanto, tornar o desempenho uma parte regular do fluxo de trabalho de desenvolvimento.

Quando você deve medir o desempenho do aplicativo?

grafos de desempenho

O desempenho do aplicativo pode abranger muitos estágios do processo de desenvolvimento. Ele tem implicações em tudo, desde sua escolha de estrutura de dados até a tecnologia que você escolhe para criar seu aplicativo.

Tenha em mente o desempenho enquanto você está desenvolvendo seu aplicativo e planeje fazer testes regulares de desempenho como parte da atualização e manutenção do aplicativo.

Como o desempenho do aplicativo é medido?

Aqui estão algumas sugestões de como abordar o teste de desempenho do aplicativo.

  • Aproveite seu conhecimento sobre seu aplicativo. Entender os cenários mais comuns para seus usuários permitirá que você gaste seu tempo com sabedoria na otimização das coisas certas. Cenários não claros podem dificultar a interpretação das medidas, portanto, não ignore esta etapa! Se você tiver dados disponíveis sobre como os usuários interagem com seu aplicativo, esse será um ótimo momento para analisá-los.
    • Onde seus usuários estão gastando a maior parte do tempo?
    • Quais são as coisas mais importantes que um cliente fará com seu software?
    • Quais são os requisitos de hardware do aplicativo?
  • Definir metas de desempenho para seus cenários de usuário mais importantes.
  • Seja preciso sobre o que você está tentando otimizar. É CPU? Bateria? Taxa de transferência de rede?
  • Selecione as ferramentas que você usará para fazer suas medidas.
  • Aplique uma mentalidade científica ao testar. Crie parâmetros de comparação em um ambiente controlado. Em seguida, faça sua alteração e repita a medida para ver como suas alterações afetaram o comportamento do aplicativo.
  • Adicione testes de regressão ao seu ambiente de teste. Isso garantirá que suas métricas de desempenho não regressem ao longo do tempo. O hardware moderno é complexo e medir o impacto das melhorias de desempenho pode ser um desafio. Investigar, medir e testar o desempenho do aplicativo destas maneiras garantirá que você saiba o impacto do seu trabalho.

Métricas entrelaçadas

Embora você normalmente se concentre em uma área de desempenho durante sua análise, lembre-se de que as áreas geralmente estão entrelaçadas. Uma melhoria em uma área pode resultar em melhorias nas outras áreas.

Por exemplo, corrigir o consumo de energia é frequentemente um problema de sincronização. A redução do uso de memória pode resultar na redução do tempo gasto usando a CPU.

Também pode haver situações em que recursos adicionais gastos em uma área produzem uma melhoria mais impactante em outra área.

Por exemplo, aumentar o consumo de memória pode diminuir a utilização de rede ou armazenamento por meio do cache.

A decisão de fazer uma alteração depende do que é mais importante para seus clientes. Também faz parte do desafio (e da diversão!) do trabalho performático.

Próximas etapas

Com esse contexto estabelecido, aqui estão algumas ações que você pode executar agora:

  • Identifique os cenários mais comuns do aplicativo. Estas serão as bases do que você está tentando medir.
  • Descubra sua estratégia de teste. Qual será o ambiente de teste e a escolha das ferramentas de medida?

Vá para a visão geral de desempenho do aplicativo Windows para saber mais sobre as ferramentas e as diretrizes disponíveis para você usar em seu percurso de desempenho.