Objetivo das otimizações

Algumas melhorias no desempenho não criam uma melhoria perceptível para os usuários. É importante concentrar as otimizações no desempenho em áreas que são problemáticas para o aplicativo específico. Algumas otimizações de desempenho são boas práticas gerais e podem sempre ser seguidas. A utilidade de outras depende das necessidades do aplicativo e de sua base de usuários prevista. Por exemplo, os aplicativos sempre desempenham melhor quando não é usada nenhuma animação, vídeo ou filtros e efeitos gráficos. No entanto, um dos motivos para utilizar a plataforma Flash para criar aplicativos é que as capacidades de mídia e gráficas permitem aplicativos altamente expressivos. Considere se o nível desejado de riqueza corresponde bem às características de desempenho das máquinas e dos dispositivos nos quais o aplicativo é executado.

Um conselho comum é "evitar otimizar muito cedo". Algumas otimizações de desempenho requerem código de escrita de uma forma que é muito difícil de ler ou menos flexível. Esse código, uma vez otimizado, é mais difícil de manter. Nessa otimizações, frequentemente é melhor aguardar e verificar se uma determinada seção do código não tem bom desempenho antes de escolher otimizar o código.

A melhoria no desempenho às vezes envolve fazer escolhas. Em condições ideais, a redução da quantidade de memória consumida pelo aplicativo também aumenta a velocidade na qual o aplicativo desempenha uma tarefa. No entanto, esse tipo de melhoria ideal nem sempre é possível. Por exemplo, se o aplicativo congelar durante uma operação, a solução normalmente envolve dividir o trabalho para executar em múltiplos quadros. Uma vez que o trabalho é dividido, é provável que demore mais para concluir o processo. Contudo, haverá a possibilidade de o usuário não notar o tempo adicional se o aplicativo continuar respondendo às entradas e não congelar.

Uma chave para saber o quê otimizar e se a otimização é útil é realizar testes de desempenho. Diversas técnicas e dicas para testar o desempenho estão descritas em Benchmark e implantação.

Para obter mais informações sobre como verificar se partes de um aplicativo são boas candidatas para otimização, consulte os seguintes recursos: