LWUIT e JavaFX Mobile: alternativas para o desenvolvimento de aplicativos para dispositivos móveis

Este artigo apresenta um estudo sobre as tecnologias LWUIT e JavaFX Mobile, que representam alternativas para desenvolvimento de aplicações para dispositivos móveis. Para aplicar e validar os conhecimentos obtidos na pesquisa desenvolveu-se prot

LWUIT e JavaFX Mobile: alternativas para o desenvolvimento de aplicativos para dispositivos móveis
¹Lucas Giaretta Oleksinski, ²Jaqson Dalbosco
Instituto de Ciências Exatas e Geociências – Curso de Ciência da Computação – Universidade de Passo Fundo (UPF) Caixa Postal 611 – 99052-900 – Passo Fundo – RS – Brasil
¹lucas.oleksinski@gmail.com, ²jaqson@upf.br

Resumo. Este artigo apresenta um estudo sobre as tecnologias LWUIT e JavaFX Mobile, que representam alternativas para desenvolvimento de aplicações para dispositivos móveis. Para aplicar e validar os conhecimentos obtidos na pesquisa desenvolveu-se protótipos de aplicações móveis onde é apresentado uma alternativa de desenvolvimento com a adoção de tecnologias identificadas na pesquisa. Por fim, são apresentadas as análises e os resultados obtidos com a conclusão do trabalho.

1. Introdução

Os dispositivos móveis estão cada vez mais presentes no dia-a-dia das pessoas, trazendo inúmeras possibilidades de uso desses aparelhos, deixando de ser somente um dispositivo de comunicação, mas também uma ferramenta para trabalho, lazer, entre outros fins.
O uso deste tipo de tecnologia vem crescendo de forma rápida. Segundo informações da Anatel (Agência Nacional de Telecomunicações) no ano de 2010, “Com 1.655.637 habilitações em abril (crescimento de 0,92% em relação a março), o Brasil chega a 180.765.438 de acessos do Serviço Móvel Pessoal (SMP) e densidade de 93,80 acessos por 100 habitantes”.
Da mesma forma que cresce o uso de dispositivos móveis e a diversidade de aparelhos no mercado surgem problemas relacionados ao desenvolvimento de aplicações para os mesmos. Devido ao fato de que existem aparelhos com diferentes características quanto à capacidade de processamento, tamanho de tela, sistema operacional, entre outras, a programação para estes dispositivos se torna uma tarefa complexa, exigindo a adoção de diferentes tecnologias para o desenvolvimento para cada tipo de equipamento.
Considerando este cenário, o estudo aprofundado sobre programação de dispositivos móveis é algo de fundamental importância atualmente. A forma com que evoluem os aparelhos também determina o ritmo para a evolução e o surgimento de novas tecnologias que possam suprir as necessidades atuais da indústria de software para esta área. Atualmente há uma grande diversidade de recursos para o desenvolvimento
desse tipo de aplicação. Dessa forma, entender e definir que tecnologias adotar para o desenvolvimento de aplicações móveis não é uma tarefa fácil.
Este trabalho tem por objetivo apresentar um estudo sobre duas alternativas para desenvolvimento de aplicações móveis, avaliando características como: portabilidade, suporte a aparelhos com telas Touch Screen, plataforma (Sistema operacional e configurações necessárias) e facilidade na criação de interfaces. Também tem por objetivo apresentar protótipos visando à aplicação prática de cada alternativa, validando-as e comparando-as.
Inicialmente apresenta-se um estudo sobre o desenvolvimento de aplicativos móveis, em que são abordadas as seguintes tecnologias:

a) Lightweight User Interface Toolkit (LWUIT), sendo uma biblioteca designada para ajudar os desenvolvedores a criar interfaces gráficas atraentes para os usuários.

b) JavaFX, sendo uma tecnologia para desenvolvimento de aplicativos com interfaces ricas para acesso em computadores, televisores e dispositivos móveis.

Ao final do estudo é realizada uma análise comparativa entre LWUIT e JavaFX Mobile. Em seguida são apresentados os protótipos desenvolvidos para validar o estudo. Através do desenvolvimento dos protótipos foi possível por em prática todos os recursos avaliados e estudados, permitindo validar as tecnologias adotadas a partir de seu uso em casos práticos de implementação desse tipo de aplicação. Por fim, são apresentadas as considerações finais e conclusões adquiridas com base no desenvolvimento deste trabalho.

2. Desenvolvimento em dispositivos móveis

O desenvolvimento de aplicações para dispositivos móveis tem evoluído exponencialmente, tornando-se um padrão de desenvolvimento quase onipresente no sentido de que muitas empresas estão escalonando ou recrutando novos desenvolvedores para formarem seus grupos de desenvolvimento para sistemas móveis a fim de criar ou adaptar soluções de serviços existentes para suprir a demanda do
mercado (RIBEIRO, 2010).

O surgimento de aplicativos e interfaces atraentes contribui na usabilidade e interatividade de aplicativos utilizados pelo usuário. Atualmente existem muitas tecnologias para o desenvolvimento das quais duas delas este trabalho aborda. As tecnologias LWUIT juntamente com a JavaFX Mobile serão avaliadas quanto alguns critérios pré-estabelecidos por serem tecnologias recentes as quais possuem alguns pontos em comum.

2.1. Lightweight User Interface Toolkit (LWUIT) Overview

LightWeigth User Interface Toolkit é uma biblioteca criada pela Sun MicroSystens, designada para a construção de aplicativos para dispositivos móveis e conversores de TV, visando suprir necessidades tanto de desenvolvedores quanto de usuários que necessitam de rapidez na construção aliado a um bom visual. Este kit de ferramentas suporta um grande número de interessantes recursos, tais como: efeitos de transição, temas personalizáveis, animações entre outros (Sarkar, 2009).

Um dos focos principais da biblioteca visa à facilidade e velocidade de produção de aplicativos para aparelhos móveis que tenham suporte a ela. Também deve-se destacar a portabilidade aliada a um visual aprimorado que a biblioteca possibilita criar, dando ao desenvolvedor uma grande ajuda no momento da produção do seu aplicativo.

2.1.1. Portabilidade

A portabilidade de interfaces e aplicativos pode ser entendida como sendo a possibilidade de se utilizar uma interface ou aplicativo desenvolvidos em uma determinada linguagem em vários aparelhos eletrônicos distintos desde que os mesmos possuam alguns pontos em comum como, neste caso, serem dispositivos móveis como celulares, PDA’s2 e etc.
Um dos fortes pontos da LWUIT diz respeito à portabilidade. A biblioteca pode rodar em um número muito grande de dispositivos móveis. A portabilidade da tecnologia pode ser entendida no momento em que se compreendem alguns problemas da portabilidade de aplicações voltadas a dispositivos móveis como apresentados a seguir:

a) a portabilidade em dispositivos às vezes tem um grande problema que é a resolução da tela dos aparelhos que, em muitas vezes, são diferentes. Isto não é mais problema na LWUIT. A biblioteca automaticamente “ajusta” a interface ou aplicativo à resolução do aparelho em que se está trabalhando (SUN, 2009). Com a LWUIT não é preciso se preocupar com o tamanho das telas dos celulares já que o mesmo tem um sistema eficiente que gerencia isto para o programador (Macedo, 2009).

b) outro problema são alguns bugs de especificações de versões antigas da CLDC3. Visando isto, LWUIT não roda em aparelhos que não contenham CLDC com versão maior ou igual a 1.1. Pode-se pensar que isto é um ponto negativo, pois se percebe que em aparelhos um pouco mais antigos ou com menos requisitos LWUIT não é portável. Para o uso da LWUIT são necessários aparelhos mais evoluídos e atuais (SUN 2009, Urrutia 2010).

2.1.2. Suporte a Touch Screen

Telas Touch Screen são aquelas em que o usuário utiliza a ponta de seus dedos que, em contato com o display, controla o dispositivo. É uma tecnologia que integra não só sensores na tela, mas também programas e interfaces específicas para entender o que está acontecendo (Assis, 2009).

Suporte a Touch Screen é, hoje em dia, algo que não pode faltar em uma biblioteca de desenvolvimento para aparelhos móveis visto que a maioria destes atualmente possui este recurso (Neto, 2009). A API4 LWUIT suporta Touch Screen,

2 Assistente Pessoal Digital. Possui um bom poder de processamento e faz tarefas como agenda, processamento de texto, envio de mensagens entre outras.

3 Connected Limited Device Configuration abrange aparelhos em que a conexão é interrompida e/ou de pequena largura de banda. Esta configuração foi projetada visando suprir as necessidades de dispositivos com pouca memória, limitações gráficas e baixo poder de processamento.

4 API – Interface para programação de aplicações.

sendo que os seus componentes suportam eventos Touch Screen, ou seja, qualquer componente que se utilize irá funcionar em celulares com este tipo de tela (SUN, 2009).

Telas sensíveis ao toque, comumente conhecidas, dão ao usuário uma boa experiência quanto à agilidade de manuseio e também aos efeitos que podem estar presentes. É grande a quantidade de aparelhos que hoje contam com esse recurso, não somente aparelhos móveis mas sim, uma gama de dispositivos com os mais variados fins, tais como: aparelhos de GPS5, telas de Notebook’s, TV’s, Painéis de informação e etc.

2.1.3. Suporte a temas personalizados

Um tema possibilita a escolha de atributos para uma classe inteira de componentes em um único lugar. Isto não só simplifica a tarefa de inicializar atributos para todos componentes de um tipo particular, mas também garante que os componentes que foram adicionados recentemente irão ter a mesma aparência que os demais na aplicação (Sarkar, 2009).

Pode-se personalizar toda a interface do usuário da aplicação, desde a imagem de fundo até componentes como botões e menus, de maneira simples e fácil. Uma mesma aplicação pode ter suporte a vários temas sem muito esforço o que dá à interface uma boa aparência e ao usuário a possibilidade de escolha (Viana, 2010).

Para criar temas para aplicações desenvolvidas em LWUIT utiliza-se o Resource Editor, o qual é uma aplicação com o único e exclusivo objetivo de facilitar a criação de temas personalizados para interfaces gráficas. É possível alterar cores, fontes, inserir imagens, entre outras funções, criando temas facilmente organizados fornecendo um visual melhorado para a aplicação.

Artigos relacionados