O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Boas práticas na criação de aplicações
SÉRIAS com JavaFX
== AVISO ==
“Este é uma apresentação pessoal. As
opiniões aqui expressadas são de única
responsabilidade minha, e nada ref...
Sobre
● Formado na FATEC SJC
● Trabalha no suporte da Red Hat
● Na área há mais de 6 anos
● Entusiasta Open Source
● Um do...
Objetivo dessa apresentação
Nessa apresentação iremos mostrar as
melhores práticas que podem auxiliar na
criação de aplica...
JavaFX
É uma moderna biblioteca Java que
dispõe de vários recursos para
criação de aplicações ricas.
Sua forma de programa...
JavaFX
http://aprendendo-javafx.blogspot.com.br/
Aplicações Sérias?
● Escaláveis
● Fácil manutenção
● Fácil entendimento
● Organização (time)
● Performance
● Usabilidade
●...
0) Bons e velhos Padrões de projeto
Boas práticas Java: http://docs.oracle.com/cd/A97688_16/generic.903/bp/java.htm
1) Camadas
http://joel.inpointform.net/software-development/mvvm-vs-mvp-vs-mvc-the-
differences-explained/
Explicação MVP X MVC
Mais: http://joel.inpointform.net/software-development/mvvm-vs-mvp-vs-mvc-the-differences-explained/
Camadas no mundo JavaFX
FXML representam as views que têm um
controller;
Controllers acessam o modelo(classes que
represen...
Camadas no mundo JavaFX
2) Utilize “Binding”
JavaFX contém objetos de “wrapping” para
propriedades comum do Java.
Esses wrappers permitem observar...
Usando Binding
Com essas técnicas diminuimos bastante código na aplicação e facilitamos a
manutenção e a legibilidade. Bin...
Usando listeners
3) Navegação FXML
Interfaces podem ser criadas usando XML com o FXML. FXMLs devem ser
carregados como componentes JavaFX p...
4) Não trave a thread do javafx
JavaFX tem uma thread específica. Tentativas de mudar a view do JavaFX
fora dessa thread r...
Exemplo com o leitor de RFID
5) Aprenda a usar CSS
● Conheça o Guia do CSS;
● Similar a páginas WEB, use classes
● Eviter fazer no código o que você po...
6) Organize bem o projeto
● Nomes convenientes a componentes da view(lbl, txt,
tbl, etc) controllers({NomeView}Controller)...
Exemplo de estrutura de projeto
7) Programe com amor
Fonte: a vida
Obrigado
@william_antonio
github.com/jesuino
aprendendo-javafx.blogspot.com
Próximos SlideShares
Carregando em…5
×

Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SP

5.739 visualizações

Publicada em

Apresentação para o TDC 2014 sobre como melhorar seu código JavaFX quando criando aplicações sérias ("enterprise") com JavaFX

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Boas práticas na criação de aplicações sérias com JavaFX - TDC 2014 SP

  1. 1. Boas práticas na criação de aplicações SÉRIAS com JavaFX
  2. 2. == AVISO == “Este é uma apresentação pessoal. As opiniões aqui expressadas são de única responsabilidade minha, e nada referem-se as da empresa para qual trabalho.”
  3. 3. Sobre ● Formado na FATEC SJC ● Trabalha no suporte da Red Hat ● Na área há mais de 6 anos ● Entusiasta Open Source ● Um dos líderes do JUG Vale ● Comunidade JavaFX ● Palestras no TDC, J1, FISL, etc... ● aprendendo-javafx.blogspot.com
  4. 4. Objetivo dessa apresentação Nessa apresentação iremos mostrar as melhores práticas que podem auxiliar na criação de aplicações "sérias" com JavaFX. Com os recursos da nova biblioteca gráfica da plataforma Java, iremos mostrar como é possível criar uma aplicação "enterprise" organizada em camadas bem definidas e de fácil manutenção.
  5. 5. JavaFX É uma moderna biblioteca Java que dispõe de vários recursos para criação de aplicações ricas. Sua forma de programar facilita muito a vida do desenvolvedor. É o novo Swing
  6. 6. JavaFX http://aprendendo-javafx.blogspot.com.br/
  7. 7. Aplicações Sérias? ● Escaláveis ● Fácil manutenção ● Fácil entendimento ● Organização (time) ● Performance ● Usabilidade ● Resolvem problemas “enterprise"
  8. 8. 0) Bons e velhos Padrões de projeto Boas práticas Java: http://docs.oracle.com/cd/A97688_16/generic.903/bp/java.htm
  9. 9. 1) Camadas http://joel.inpointform.net/software-development/mvvm-vs-mvp-vs-mvc-the- differences-explained/
  10. 10. Explicação MVP X MVC Mais: http://joel.inpointform.net/software-development/mvvm-vs-mvp-vs-mvc-the-differences-explained/
  11. 11. Camadas no mundo JavaFX FXML representam as views que têm um controller; Controllers acessam o modelo(classes que representam a regra de negócio) e alteram a view. O acesso dos controlers ao modelo, no entanto, é feito indiretamente através de classes de acesso(DAO, Service).
  12. 12. Camadas no mundo JavaFX
  13. 13. 2) Utilize “Binding” JavaFX contém objetos de “wrapping” para propriedades comum do Java. Esses wrappers permitem observar os valores das propriedades(listener) ou fazer com que propriedades se comportem em função de outras (bind) Fonte: http://www.oracle.com/technetwork/articles/java/fxbest-1583679.html http://docs.oracle.com/javafx/2/binding/jfxpub-binding.htm
  14. 14. Usando Binding Com essas técnicas diminuimos bastante código na aplicação e facilitamos a manutenção e a legibilidade. Bindings funcionam para diversos tipos primitivos e com diversas expressões de binding, fazendo com que o código fique praticamente em inglês puro!
  15. 15. Usando listeners
  16. 16. 3) Navegação FXML Interfaces podem ser criadas usando XML com o FXML. FXMLs devem ser carregados como componentes JavaFX para serem usados… Criar uma classe de navegação com metódos utilitários de navegação e acesso centralizado é recomendável! Mais:https://blogs.oracle. com/acaicedo/entry/managing_multiple_screens_in_javafx1
  17. 17. 4) Não trave a thread do javafx JavaFX tem uma thread específica. Tentativas de mudar a view do JavaFX fora dessa thread resultam em erro. Platform.runLater deve ser usado para fazermos as coisas dentro da thread do JavaFX. Para tarefas pesadas que devem ser feitas em paralelo, use as classes do pacote de concorrência do JavaFX. Mais: http://docs.oracle.com/javafx/2/best_practices/jfxpub-best_practices.htm http://docs.oracle.com/javafx/2/threads/jfxpub-threads.htm
  18. 18. Exemplo com o leitor de RFID
  19. 19. 5) Aprenda a usar CSS ● Conheça o Guia do CSS; ● Similar a páginas WEB, use classes ● Eviter fazer no código o que você pode fazer no CSS ● Busque estudar a aplicação e entender o estilo antes de começar a sair espalhando CSS Mais: http://docs.oracle.com/javase/8/javafx/api/javafx/scene/doc-files/cssref.html
  20. 20. 6) Organize bem o projeto ● Nomes convenientes a componentes da view(lbl, txt, tbl, etc) controllers({NomeView}Controller),FXML e css; ● Padronize a localização de conteúdos da aplicação Mais: http://docs.oracle.com/javafx/2/best_practices/jfxpub-best_practices.htm
  21. 21. Exemplo de estrutura de projeto
  22. 22. 7) Programe com amor Fonte: a vida
  23. 23. Obrigado @william_antonio github.com/jesuino aprendendo-javafx.blogspot.com

×