Atenção: esse artigo tem um vídeo complementar. Clique e assista!

Do que trata o artigo

Neste artigo veremos como resolver alguns dos problemas comuns de desempenho em aplicações de dispositivos móveis. É nos dispositívos móveis que precisamos nos preocupar mais com as limitações de hardware, como processamento e memória, e portanto é necessário estarmos atentos à performance das nossas aplicações móveis. Veremos neste artifo como melhorar a performance desses aplicativos com o .net Compact Framework.


Para que serve

As técnicas demonstradas neste artigo podem ajudar o desenvolvedor a entender algumas particulariedades do .net compact framework, dando dicas de códigos e ferramentas para medir e melhorar o desempenho das suas aplicações. Veremos técnicas de melhoria de performance comprovadas e utilizadas por especialistas no desenvolvimento de aplicações móveis.

Em que situação o tema é útil

Qualquer tipo de aplicação móvel que construímos hoje necessita de uma boa performance. Sejam aplicações de força de vendas, onde um vendedor precisa colocar um pedido o mais rápido possível para não perder um negócio. Ou ainda em uma aplicação que consulta informações financeiras, proporcionando ao seu usuário condições para uma tomada de decisão antecipada. A mobilidade em si já pressupõe agilidade, e portanto criar aplicações móveis rápidas é de suma importância.

Resumo do DevMan

Os princípios de otimização de desempenho são geralmente os mesmos em todas as plataformas. As dicas descritas nesse artigo também se aplicam em projetos para Desktop. Este artigo destaca alguns dos problemas comuns de desempenho resumindo as técnicas que podem ser aplicadas a dispositivos com recursos limitados. Entender o CLR do .Net Compact Framework é fundamental para escrever um código eficiente. Este artigo descreve ainda como usar os contadores de desempenho e Remote Performance Monitor. Além disso, os exemplos de código usados podem ajudá-lo a medir o consumo de memória ou a velocidade de uma operação de programação.

Apesar de significativas melhorias no hardware e nos sistemas operacionais, dispositivos móveis, como os smartphones, ainda tem um hardware limitado, o que torna o desempenho de sua aplicação uma das considerações mais importantes durante o desenvolvimento. Além disso, estes dispositivos são feitos para funcionar com bateria, o que torna essencial que sua aplicação tenha um melhor desempenho, para que tenha como o objetivo de preservá-la também.

Existem programadores tão obcecados por otimizar o código, que o torna quase que ilegível, isto não é correto. Seu código deve executar tão rápido quanto o suficiente. A verdadeira meta é identificar o que é rápido suficiente para a sua aplicação.

Por exemplo, se sua aplicação leva 5 segundos para popular um listbox e os usuários não se importam com esse tempo, porque perder horas tentando melhorar esse tempo e criar códigos ilégiveis? Então a primeira coisa a se fazer é: validar com o usuário se esse tempo o satisfaz. Muitas vezes basta criar uma splash window com um progressBar ou pelo menos mudar o cursor para wait para mostrar para o usuário que a tarefa que ele solicitou do software esta sendo processada.

Se o seu usuário não sabe se o desempenho está bom, uma outra alternativa que poderia te ajudar para determinar, seria verificar se existem versões antigas desse software ou se existem softwares similares no mercado para determinar qual o tempo que eles levam para fazer a mesma atividade.

As chaves para alcançar um bom desempenho são:

• Estabelecer metas de desempenho no início do processo de desenvolvimento.

• Compreender como o compilador JIT compila o código e como ajudar o Garbage Collector a evitar práticas que criam lixo na memória.

• Utilizar ferramentas para identificar exatamente onde está o problema de desempenho e para monitorar o desempenho.

• Usar algumas dicas e truques fornecidas pelo time que desenvolveu o .net compact framework para fazer que sua aplicação seja executada o mais rápido possível.

Nota do DevMan

Smartphones são telefones celulares, porém nem todo celular é um Smartphone. Para que um telefone celular possa ser considerado um Smartphone, ele deve atender estes dois requisitos: Ele precisa ter um sistema operacional, como por exemplo o Windows Mobile, Symbian, Android entre outros. E ele também deve permitir a instalação de aplicativos nativos para este sistema operacional.

...

Quer ler esse conteúdo completo? Tenha acesso completo