Pular para o conteúdo principal

JAVAFX – O JAVA PARA DESKTOP

Com o “boom” do desenvolvimento Web que tivemos anos atrás, muitos programadores (inclusive esse que vos fala) esqueceram do bom e velho desenvolvimento de aplicativos standalone ou aplicativos para desktops.

Há algumas semanas surgiu uma demanda para o desenvolvimento em cima da plataforma JavaFX: uma plataforma que proporciona recursos para a criação de aplicações desktop de forma prática usando Java.
O Java nunca foi muito famoso por seus recursos para o desenvolvimento desktop. O AWT e o Swing não proviam tantos recursos e acabaram sendo ofuscados por plataformas concorrentes, como o Delphi, VB entre outros.

Com o JavaFX, a linguagem ganhou vários novos recursos para o desenvolvimento de aplicações dessa natureza. A plataforma possui diversos componentes que podem ser utilizados para criar a interface de usário de sua aplicação, entre elas estão componentes básicos como tabelas, campos textos, labels e uma grande variedade de gráficos.

As telas podem ser desenvolvidas de várias formas, desde criar os componentes manualmente com código Java, utilizando a linguagem de marcação FXML que é baseado no conhecido padrão XML. É possível também utilizar uma ferramenta bastante útil, provida pela própria plataforma, chamada de Scene Builder.

Com essa ferramenta é possível editar os arquivos FXML de forma visual, com recursos drag and drop. A manipulação dos elementos UI ficam muito simples, permitindo o rápido desenvolvimento da camada de visualização da aplicação.

A interação da camada de visualização e a camada de controle acontece por meio de eventos e a sua atribuição é muito simples: em cada tela informamos qual é a classe responsável pelo controle daquela view. Feito isso, basta anotarmos os métodos e atributos que desejamos que a view acesse com a annotation @FXML, após isso o Scene Builder irá reconhecer os métodos anotados e a integração acaba sendo uma simples seleção em um combo!

Screenshot - Scene Builder
Para customizar a aparência dos componentes é possível utilizar uma linguagem muito conhecida pelos desenvolvedores web: o CSS. A sua utilização no JavaFX é praticamente a mesma da web. A única grande diferença é a nomenclatura utilizada nos atributos, todos eles possuem um prefixo -fx-. Sendo assim, para alterar a cor de fundo de um componente utilizamos o -fx-background-color.

Para finalizar, o JavaFX proporciona uma maneira diferente de empacotamento da aplicação para distribuição. Em uma aplicação convencional, seria distribuido um arquivo .jar para o usuário final e esse usuário precisaria ter o JRE instalado, compatível com o utilizado no empacotamento do .jar, em sua máquina para poder executar a aplicação. Um processo cheio de detalhes e que pode causar vários transtornos.

O JavaFX oferece uma solução mais elegante e simplificada. Com a plataforma é possível gerar um “Self-Contained Application Packaging” onde, além da aplicação, é empacotado junto o “Runtime” do Java, tornando a distribuição compativel independente da versão que o usuário tenha, ou não, instalada em sua máquina, facilitando bastante a distribuição do aplicativo.

Bom, esse é apenas um resumo do que a plataforma oferece, abaixo deixo alguns links para quem tiver interesse em saber mais sobre o assunto e fiquem a vontade para comentar.

Site oficial: http://www.oracle.com/technetwork/java/javafx/overview/index.html

Documentação do Self-Contained Application Packaging: http://docs.oracle.com/javafx/2/deployment/self-contained-packaging.htm

Excelente tutorial: http://edu.makery.ch/blog/2012/11/16/javafx-tutorial-addressapp-1/

Código fonte do tutorial acima: https://github.com/erickzanardo/javafxstudy

Artigo reblogado original em: http://www.dextra.com.br/javafx-o-java-para-desktop/

Comentários

Postagens mais visitadas deste blog

Video Aulas de Java já disponíveis no 4Shared

Turma segue as video aulas já disponíveis para download no 4Shared , espero que vocês gostem das aulas e por favor postem um comentario no blog dizendo o que vc's acharam preciso desse feed back para o constante aprimoramento das aulas . Basta escolher o arquivo clickar  no link para download ( tenha paciencia os arquivos são grandes ) <p>&lt;p&gt;&amp;amp;amp;amp;lt;p&amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;amp;lt;br&amp;amp;amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;amp;lt;br&amp;amp;amp;amp;amp;amp;amp;gt;se&amp;amp;amp;amp;lt;/p&amp;amp;amp;amp;gt;&lt;/p&gt;</p> Se a Janela de Download acima não funcionar tente acessar os arquivos usando o seguinte link http://www.4shared.com/dir/34812571/bf01348d/VideoAulas.html Bom estudo  :-)

Notícias da UFSC » UFSC é segunda universidade brasileira melhor colocada no Webometrics

Notícias da UFSC » UFSC é segunda universidade brasileira melhor colocada no Webometrics : A Universidade Federal de Santa Catarina passou à segunda instituição brasileira melhor qualificada no  Ranking Web of World Universities , sendo a primeira universidade federal brasileira no levantamento . No primeiro lugar geral se mantém a USP. No ranking passado, publicado no mês de janeiro, a UFSC ocupava a quarta posição. Na classificação para a América Latina, em que figurava como quinta universidade,  passou a terceira colocada. E no ranking mundial está entre as cem universidades do mundo: subiu da 129ª posição para a 98ª. Harvard University, Massachusetts Institute of Technology e Stanford University se mantêm no topoda classificação mundial. Entre as brasileiras, lideram aUniversidade de São Paulo (USP), UFSC e Universidade Estadual de Campinas (Unicamp)

Serialização de objetos I - Salvando objetos em arquivos

Serialização: como salvar seus objetos Java par utilizar quando precisar  Serialização de objetos é a possibilidade de salvar uma cópia completa de um objeto ou de uma coleção de objetos em um fluxo de saída (arquivo externo), de modo que o objeto pode ser recriado a partir da cópia serializada  quando necessário . A serialização de objetos Java,  fornece um recurso para transformar um grupo ou um único objeto em um fluxo de bits, ou um array de bytes para armazenar ou enviar pela rede,  de modo que o  referido fluxo de bits ou uma matriz de bytes pode ser transformado novamente em objetos Java. O processo de serialização também é conhecido como marshaling de um objeto, e de-serialização é conhecido como un-marshaling. Assim a serialização oferece os seguintes benefícios: Um sistema para persistência de objetos, ou seja, escrever as suas propriedades em arquivos externos ou discos, ou salvá-las em um banco de dados. Um sistema para chamadas d...