Usando Software Livre Java para Desenvolvimento de Software
(Edilmar Lima Alves
/ JUGMS)
Usando Software Livre Java para Desenvolvimento de Software
Sequência de Tópicos da Apresentação:
1. Apresentação e Visão Geral da Nova Plataforma Java (opensource)
2. IDEs: Eclipse e NetBeans
3. Frameworks para Desenvolvimento Desktop e Web
4. Integração com SGBDs
5. Relatórios e Gráficos
6. Integração com Web Services
7. Outros Utilitários
8. Conclusão
Edilmar Lima Alves é mestre em Ciência da Computação pela UNICAMP/SP, Professor Universitário nas áreas de Redes de Computadores/Servidores Linux e Programação Java, Sócio/Diretor Técnico da InterSite Informática, onde desenvolve projetos de sistemas usando ferramentas livres, além de administração de servidores Internet Linux.
1. 1º Dia da Liberdade de Software
Usando Software Livre Java
para Desenvolvimento de Software
Edilmar Alves
Setembro/2008
edilmaralves@intersite.com.br
2. Tópicos
●
Apresentação e Visão Geral da Nova Plataforma Java
●
IDEs: Eclipse e NetBeans
●
Frameworks para Desenvolvimento Desktop e Web
●
Integração com SGBDs
●
Relatórios e Gráficos
●
Integração com WebServices
●
Outros Utilitários
●
Conclusão
3. Apresentação da Plataforma Java
●
http://java.sun.com/
●
http://java.sun.com/docs/books/tutorial/index.html
●
Plataforma de Desenvolvimento
●
Máquina Virtual Multiplataforma
5. Apresentação da Plataforma Java
●
JDK – Java Development Kit (ferramentas de desenvolvimento, possui o
JRE embutido)
●
JRE – Java RunTime Environment (distribuição para ambiente de
produção)
●
JME – Java MicroEdition (subconjunto do JRE, versão para
dispositivos “menores”, celulares, PDAs, etc)
●
JEE – Java Enterprise Edition (JRE + ferramentas para demandas
corporativas “maiores”, como webservices, e desenvolvimento multi
camadas em geral)
●
Java finalmente como SL: http://openjdk.java.net/
7. IDEs
●
IDE – Interface Development Environment... deveria ser ADE – ALL ...
●
As mais usadas: NetBeans (http://www.netbeans.org/) e Eclipse (
http://www.eclipse.org/)
– NetBeans (investimento Sun);
– Eclipse (investimento IBM), mais plugins.
●
Outras: JCreator, BlueJ, etc
●
Decisão de uso: pessoal (conforto com interface e usabilidade), demanda
de plugins específicos.
●
Integração da IDE com a UML para documentação;
●
Documentação javadoc.
8. Frameworks
●
Framework – possui uma série de funcionalidades prontas, para não
precisar “reinventar a roda”;
●
Desenvolvimento Web: servlets, JSPs, JSFs, integração com HTML,
Javascript (com ou sem Ajax, frameworks como ExtJS), CSS, etc
– Struts, Webwork, Spring, Tiles, Mentawaii, Grails, OpenLaszlo
(+Flash), JSenna, VRaptor, AppFuse, JBoss Seam, Apache Wicket,
SubMacro (http://submacro.dev.java.net/), etc.
●
Desenvolvimento Desktop: AWT, Swing ou SWT... ou SwingWT
– JavaDesktop, Mogwai SwingFramework, BeansBinding, SubMacro
●
Conceito de Interfaces “Ricas”
9. Integração com SGBDs
●
JDBC – Java Database Connectivity
●
Disponível para diversos SGBDs livres (ex. Firebird, MySQL,
PostgreSQL, etc) ou não (Oracle, MSSQL, etc)
– http://www.firebirdsql.org/index.php?op=files&id=jaybird
– http://dev.mysql.com/downloads/connector/j/5.1.html
– http://jdbc.postgresql.org/
●
Mapeamento ObjetoRelacional: mecanismo para programar de forma
“pura” orientada a objetos, sem uso de SQL. Os mais conhecidos são o
Hibernate e o EJB3
12. Relatórios e Gráficos
●
iText: gerador de PDFs
●
JasperReports: gerador de relatórios
●
iReports: design visual para o JasperReports
●
JFreeChart: montagem de gráficos, pode ser usado diretamente ou
integrado com o JasperReports
●
Poi: integração com pacotes Office e OpenOffice, para geração de
documentos e planilhas.
16. Integração com WebServices
●
WebServices: permitir que sistemas de diferentes empresas e órgãos do
governo possam trocar informações via Internet.
●
Ex. NFeletrônica, consulta de CEP e endereços do Correio, consulta de
cheques, consulta de SERASA/SPC, troca de informações entre clientes
e fornecedores, etc.
●
Servidores: Tomcat, Axis, JBoss, GlassFish, etc
17. Outros Utilitários
●
Envio de email via biblioteca JavaMail
●
Conexão a sites HTTP com HttpClient
●
Conexão a servidores de FTP
●
Processamento de arquivos XML (ex. JDOM)
●
Criptografia e assinatura digital
●
Integração com impressoras fiscais (ex. Bematech)
●
Integração com bancos (geração de boletos, arquivos remessa e retorno)
●
Integração com operadoras de cartões de crédito e débito
●
etc, etc, etc........
18. Conclusão
●
Java: plataforma completa de desenvolvimento, de celulares a
supercomputação
●
Inúmeras ferramentas livres para auxílio e agilidade no desenvolvimento
●
Solução para vários sistemas operacionais
●
Suporte e investimento de empresas fortes no mercado mundial como
SUN, IBM, Oracle, etc
●
Ferramenta estratégica para o sucesso do Linux no ambiente corporativo
●
Java = ferramenta definitiva para seu software!