Atenção: esse artigo tem uma palestra complementar. Clique e assista!
Atenção: esse artigo tem um vídeo complementar. Clique e assista!
Este artigo tem o objetivo de fornecer uma visão geral sobre a plataforma JavaFX, apresentando aspectos pertinentes à sua arquitetura, contexto em relação a Java e sua sintaxe. Para isso, será apresentado por meio de um exemplo como criar uma aplicação e como executá-la em diferentes dispositivos (Desktop e Mobile).
Para que serve:
Este artigo é relevante para quem estiver interessado em aprender sobre a JavaFX e como criar aplicações RIA utilizando esta plataforma.
Em que situação o tema útil:
O desenvolvimento de aplicações RIA é mais conhecido no contexto da web. Porém, JavaFX pretende expandir a utilização de RIA para aplicações que possam ser executadas em vários tipos de dispositivos. Dessa forma, este tema é útil pois apresenta ao leitor como criar aplicações utilizando a plataforma JavaFX para serem executadas em dispositivos móveis, PCs e TVs digitais.
Muito tem se discutido e ouvido a respeito do novo “boom” do desenvolvimento web: o RIA. O termo, que do inglês significa Rich Internet Application (cuja tradução mais adequada seria Aplicação Rica para Internet), está sendo muito utilizado devido às suas várias vantagens. Entretanto, as principais vantagens estão relacionadas à riqueza de recursos, como expressivos componentes de GUI, efeitos de animação, estilos, layout, e de interatividade com o usuário, no qual os eventos são tratados como se estivéssemos desenvolvendo para Desktop. Outras vantagens estão relacionadas à facilidade e rapidez no desenvolvimento, onde é possível escrever uma aplicação em poucas linhas de código, e a comunicação assíncrona, em que o cliente não precisa necessariamente receber uma resposta do servidor para que continue o processamento, o que torna o sistema mais responsivo para o usuário. Várias são as plataformas de desenvolvimento que já adotaram o padrão RIA, tais como Adobe Flex, Microsoft Silverlight, Adobe AIR e OpenLaszlo.
Em Maio de 2007, durante o JavaOne, a Sun Microsystems anunciou a sua nova aposta para o desenvolvimento com RIA: a plataforma JavaFX. Contudo, ela só foi disponibilizada para desenvolvimento no ano seguinte, e em 12 de fevereiro de 2009, eis que surge a versão móvel para rodar em dispositivos móveis com a JavaFX, já em sua versão 1.1. A versão 1.2 (utilizada neste artigo) surgiu tão logo, em 2 de junho de 2009, trazendo inúmeras novidades que fogem do escopo deste artigo, mas que podem ser conferidas no endereço: http://javafx.com/docs/articles/javafx1-2.jsp.
Neste artigo será apresentado como construir uma aplicação utilizando a plataforma JavaFX e como adaptá-la para ser executada em dispositivos móveis. O intuito não é explorar as inúmeras funcionalidades e recursos disponíveis na plataforma, mas sim apresentar uma visão geral de JavaFX e permitir que o leitor possa desenvolver sua primeira aplicação.
A plataforma JavaFX
JavaFX surgiu com o intuito de permitir a compatibilidade e portabilidade de aplicações RIA para rodarem em vários tipos de dispositivos, que vão desde um simples celular, passando por smartphones, desktops, até chegar em TVs digitais. A Figura 1 mostra o spectrum planejado para a plataforma com suporte para ser executada em inúmeros perfis de dispositivos.
Porém, o leitor deve estar se perguntando: como é possível que haja toda essa portabilidade, tendo em vista tanta heterogeneidade (como tamanho de tela, capacidade de processamento e de armazenamento) intrínseca aos vários tipos de aparelhos? Para isso, os engenheiros da JavaFX projetaram uma arquitetura especial que permite que uma aplicação desenvolvida para desktop seja portada facilmente para um dispositivo móvel, sem muita necessidade de mudança de código. A seguir, será explicada a arquitetura e detalhes de suas camadas.
...