Pós-Graduação em Ciência da Computação – UFPE
Defesa de Dissertação de Mestrado Nº 2.136

Aluno: Bernardo de Moraes Santana Júnior
Orientador: Prof. Fernando José Castor de Lima Filho
Coorientador: Prof. Wellington Oliveira Junior (Universidade de Lisboa)
Título: Explorando frameworks multiplataforma para desenvolvimento Android: 
Uma investigação sobre o consumo de recursos
Data: 27/03/2024
Hora/Local: 8h – Virtual – Interessados em assistir entrar em contato com o aluno
Banca Examinadora:
Prof. Leopoldo Motta Teixeira (UFPE / Centro de Informática)
Prof. Fernando Antônio Mota Trinta (UFC / Departamento de Computação)
Prof. Fernando José Castor de Lima Filho (UFPE / Centro de Informática)


RESUMO:

O desenvolvimento multiplataforma tem chamado a atenção de várias empresas 
do mercado devido à necessidade de uma única base de código para várias 
plataformas distintas. Essa característica é vantajosa, pois tende a 
acelerar o processo de desenvolvimento de software e reduzir a quantidade 
de bugs. Porém, essa forma de desenvolvimento normalmente adiciona camadas 
de abstração ao código que podem impactar negativamente no desempenho da 
aplicação final. Este trabalho visa analisar o impacto causado pelo 
desenvolvimento com a abordagem multiplataforma em dispositivos Android, e 
também apresenta uma ferramenta para automação do processo de análise, 
chamada de Ebserver. Esta pesquisa analisou os frameworks de maior destaque 
da atualidade e comparou a performance de dois programas e dez benchmarks 
para entender qual o custo de escolha dos frameworks em relação ao 
desenvolvimento na abordagem nativa. Para facilitar o processo de análise, 
a construção do Ebserver se mostrou de grande utilidade para garantir uma 
maior confiabilidade dos dados gerados e velocidade no processo de coleta 
dos dados durante os testes dos programas. Para análise dos frameworks, foi 
utilizado um conjunto de programas de benchmarks – sem interação com a 
interface gráfica -, além de uma aplicação focada em animação de imagens e 
outra aplicação de gerenciamento de contatos, uma que atualiza a GUI 
constantemente e outra que envolve interação com usuário. Para coleta de 
informações, como consumo de memória, CPU, energia e tempo de execução, foi 
utilizado o Android Debug Bridge (ADB). Dados encontrados mostram que, a 
depender da aplicação, os frameworks multiplataforma podem ser bastante 
competitivos a nível de performance em comparação com a abordagem nativa, 
em Java. Flutter, no geral, foi o que apresentou menor impacto em 
comparação aos demais frameworks, havendo cenários em que até mesmo 
performou melhor do que a abordagem nativa. React Native, enquanto tendo a 
pior performance em cenários de alto consumo de CPU, obteve a melhor 
performance nos testes mais focados em atualização frequente da interface 
gráfica. Os resultados mostram que a escolha de qual ferramenta utilizar 
vai depender do cenário e o processo de análise é de grande importância 
antes de se dedicar a um framework para desenvolvimento de aplicações de 
grande porte.

Palavras-chave: Android. Automação. Desenvolvimento Multiplataforma. Ebserver.

Comentários desativados

Sobre este site

Portal institucional do Centro de Informática – UFPE

Encontre-nos

Endereço
Av. Jornalista Aníbal Fernandes, s/n – Cidade Universitária.
Recife-PE – Brasil
CEP: 50.740-560

Horário
Segunda–Sexta: 8:00–18:00