Curso JavaFX - Centro Universitário da FEI
This post will be translated to English
Desenvolvendo Aplicações Ricas com JavaFX
O JavaFX é uma linguagem de scripts desenvolvida para implementação de RIA (Rich Internet Application), aplicações ricas para internet.
Objetivo do Curso:
O principal objetivo do curso é difundir a tecnologia JavaFX para universitários e estimular o uso da tecnologia em projetos acadêmicos e nas empresas.
O Curso:
O Curso aconteceu nos dias 19 a 25 de Janeiro de 2009 no Centro Universitário da FEI, para estudantes da instituição, com faixa etária de 20 a 28 anos. O curso teve duração de 3 horas por dia. As aulas foram dadas no laboratório da universidade. O curso foi dado para 30 alunos.
Infra:
Utilizamos o Virtual Box (virtual-box.org) e montamos para cada dia um ambiente virtualizado, este ambiente era configurado especialmente para aquela aula, com seus softwares instalados, apresentação, projetos utilizados e informações.
Esta atitude, de dar curso em ambiente virtualizados, foi muito bem elogiada pelo alunos, que podiam levar seus ambientes para casa e continuar o que estavam fazendo em casa. E não tivemos problemas em configurações de máquinas, pois os ambientes eram configurados e subidos para cada máquina, horas antes de começar a aula. Os alunos somente tinham que abrir o Virtual Box e dar start na máquina virtual.
O Conteúdo:
Primeiro Dia: No primeiro dia foi passado a introdução sobre RIA (Rich Internet Applications) e sobre a tecnologia JavaFX, como ela funciona, sobre a integração com Java. Tambem foi mostrado os passos necessários para começar a utilizar JavaFx. Como o site oficial, link para downloads e alguns exemplos.
- Procedimento da Aula - Passar o conceitos de RIA, sobre a evolução da tecnologia e do acesso a internet em diferentes periféricos. A dificuldade de padronização dos sites e da falta de aplicações ricas, onde todos os dispositivos possam acessá-la. Tambem demonstrar o site do Javafx.com e os exemplos disponíveis. Uma dúvida que sempre surge é como o JavaFX funciona na máquina, se precisa de plugin, deixar claro o funcionamento através da JVM.
Tambem na aula fizemos a instalação do JDK, SDK do JavaFx e Netbeans 6.5 com o JavaFX integrado. Fizemos toda essa instalação no ambiente virtualizado.
Segundo Dia: No segundo dia os alunos aprenderão os conceitos básicos da linguagem, aprendendo grandes funcionalidades e facilidade de programação com javaFX. Foi mostrados alguns exemplos de códigos com scripts, operadores, expressões, tipos de dados, sequências, classes e pacotes. Após a aula teórica, os alunos fizeram exercícios práticos, utilizando os
conceitos que tinham aprendido.
- Procedimento da Aula - Utilizando como base a apresentação foi passado os conceitos básicos da linguagem, como definição de variáveis, criacão de objetos, entrada e saída de valores. Utilizar o Netbeans como IDE padrão para o desenvolvimento. No Java Passion, é disponibilizado alguns exemplos que usamos para demonstrar os conceitos estudados, e os exercícios também foram baseados nos exemplos.
Download dos Exercícios
Download da Apresentação
Terceiro Dia: No terceiro dia, os alunos aprenderam os conceitos avançados e exclusivos da tecnologia JavaFX. Como Triggers e Bindings. Nesta aula também os alunos aprenderam a criar e alterar objetos.
- Procedimento da Aula - A apresentação mostra diversos conceitos que somente JavaFx possui, como o triggers e bindings. Usamos os exemplos disponibilizados no Java Passion
Download dos Exercícios
Download da Apresentação
Quarto Dia: O quarto dia foi voltado para a introdução de criação de designers de interfaces. Que é o objetivo do Projeto Nile, de unir o Designer com o Programador. Esta prática é possível com a utilização do pacote disponível no Javafx.com chamado Production Suite. Este pacote contêm plugins para o Adobe Photoshop, Adobe Ilustrador e um conversor de SVG para o formato FX. Com este pacote, os designer conseguem exportar sua interface e passa-la para o programador desenvoler a lógica da interface, isso sem ocorrer nenhuma alteração de designer.
Nesta aula, os alunos conheceram algumas das funcionalidades destas ferramentas de desenhos vetoriais. E utlizamos como programa base no curso, o Inkscape que é um programa OpenSource para desenhar objetos vetoriais no formato SVG, este programa estava disponível no ambiente criado para a aula. Também nesta aula os alunos aprenderão a fazer animações com os objetos criados nas ferramentas e exportados.
- Procedimento da Aula: Como procedimento de aula, primeiro os alunos instalarão os plugins do Production Suite e foi feita uma demostração de cada ferramenta com o seu plugin e também de como exportar os desenhos SVG para o formato FX. O pacote do Production Suite, também tem um visualizador de arquivos FX. Após isso, foi passado um pequeno exercício para os alunos criarem alguns objetos no inkscape e fazer animações no objetos criado.
Quinto Dia: No último dia do curso, foi proposto aos alunos um grande desafio, onde eles teriam que unir todos os conceitos aprendidos durante a semana do curso no exercício proposto. Passamos aos alunos o desafio de criar um Relógio com JavaFx, e os melhores relógios seriam premiados.
- Procedimento de Aula: Para incentivar o pessoal a desenvolver os projetos, levamos alguns brindes, onde os
melhores projetos ganhariam brindes. Também tiveram a possibilidade de desenvolver o projeto em duplas, onde eles poderiam dividir o trabalho. Foi disponibilizado aos alunos todos os recursos utlizados na aula anteriores, como os exemplos de código e o ambiente equipado com o Netbeans, Inkscape e o Production Suite. Também ficamos no suporte, caso os alunos tivessem alguma dúvida.
Avaliação do Curso:
Ao término do curso, fizemos uma ficha de avaliação de maneira a colher as opiniões dos alunos quanto ao curso aplicado naquela semana. Esta avaliação serve como base para a melhoria do curso futuramente.
Muitos dos alunos encararam o curso com o objetivo de aprender novas tecnologias. E muitos deles ficaram satisfeitos com o curso, dando notas boas nas avaliações do professor, do material e da utilização de ambientes virtualizados. Com este índice de avaliação alto, os alunos tiveram bastante interesse em utilizar JavaFX em projeto acadêmicos e nas empresas, devido a sua grande facilidade implementação e da união de designers com programadores. Porém houveram críticas quanto ao período do curso, muitos acharam que foi pouco tempo. < Fotos do segundo Dia >
Quanto a avaliação do conhecimento pré e pós curso, a maioria dos alunos começaram o curso sem nenhum conhecimento da tecnologia e muitos deles se avaliaram ao término do curso com conhecimento básico da tecnologia. A Avaliação quanto a reelevância em aprender JavaFx também teve nota alta.
Encaramos estas avaliações como sendo positivas para a replicação do curso posteriormente.
Aspectos Positivos do Curso:
Um grande aspecto positivo, foi o interesse dos alunos em aprender JavaFX. O curso foi encarado de forma muito séria, tivemos poucas faltas durante a semana. Outros aspecto que foi bastante apoiado, foi a utilização do Virtual Box para virtualizar o ambiente que seria dado o curso, isso pois os alunos poderiam levar o ambiente para casa e continuar a fazer os projetos, além de conhecer uma nova ferramenta. Distruibuimos para todos os alunos alguns brindes da Sun, como caneta, adesivos e DemostrarCd's do OpenSolaris.
Aspectos Negativos do Curso:
Um dos aspectos negativos foi quanto ao tempo do curso, muitos acharam que foi corrido com pouco tempo para exercícios. Faltou também um repositório para armazenamento dos materias utilizados como as apresentações, isso facilitaria para os alunos poderem baixarem em outros locais. A aula de Designer tem que abrangir mais o tema e aprofundar mais, pois é uma aula importante.
Idéias para Cursos Futuros:
- Criar os ambiente em OpenSolaris
- Incluir na grade do curso JavaFX Mobile
- Falar mais sobre o uso e projetos que foram feitos em JavaFX e que podem ser feitos com JavaFX
- Demostrar e incluir na grade projetos JavaFX com integração com outras tecnologias, como Banco de Dados MySQL.
- Fazer antes do curso um contato com os alunos para passarem links e artigos para serem lidos antes do curso.
- Se houver pré-requisito como saber linguagem Java, disponibilizar os links dos cursos do SAI e JEDI para os alunos fazerem.
- A aula de Designer tem que ser mais aprofundada pois houve um grande interesse dos alunos.
- O Desafio poderia ser feito em partes durante os dias do curso, para no final ser unificado e ter um grande projeto. Abrangindo todos os tópicos
Links Úteis:
http://javafx.com/
http://javafx.com/downloads/all.jsp
http://www.javapassion.com/javafx/
http://osum.sun.com/group/javafx
http://br.sun.com/developers/
http://www.virtualbox.org/
http://www.inkscape.org/


Hi, my name is Tom Mix, I study Computer Science at the University Center of FEI - Brazil. I work for Sun Microsystems as Sun Campus Ambassador. Welcome to my blog !!!