Download - Software Livre Java

Transcript
Page 1: Software Livre Java

1º Dia da Liberdade de Software

Usando Software Livre Javapara Desenvolvimento de Software

Edilmar AlvesSetembro/2008

[email protected]

Page 2: Software Livre Java

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 Web­Services● Outros Utilitários● Conclusão

Page 3: Software Livre Java

Apresentação da Plataforma Java● http://java.sun.com/● http://java.sun.com/docs/books/tutorial/index.html● Plataforma de Desenvolvimento● Máquina Virtual Multi­plataforma

Page 4: Software Livre Java

Apresentação da Plataforma Java

Page 5: Software Livre Java

Apresentação da Plataforma Java● JDK – Java Development Kit (ferramentas de desenvolvimento, possui o 

JRE embutido)● JRE – Java Run­Time Environment (distribuição para ambiente de 

produção)● JME – Java Micro­Edition (subconjunto do JRE, versão para 

dispositivos “menores”, celulares, PDAs, etc)● JEE – Java Enterprise Edition (JRE + ferramentas para demandas 

corporativas “maiores”, como web­services, e desenvolvimento multi­camadas em geral)

● Java finalmente como SL: http://openjdk.java.net/

Page 6: Software Livre Java

Apresentação da Plataforma Java

Page 7: Software Livre Java

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 plug­ins.

● Outras: JCreator, BlueJ, etc● Decisão de uso: pessoal (conforto com interface e usabilidade), demanda 

de plug­ins específicos.● Integração da IDE com a UML para documentação;● Documentação javadoc.

Page 8: Software Livre Java

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”

Page 9: Software Livre Java

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 Objeto­Relacional: mecanismo para programar de forma “pura” orientada a objetos, sem uso de SQL. Os mais conhecidos são o Hibernate e o EJB3

Page 10: Software Livre Java

Tela Web – SubMacro + SGBD

Page 11: Software Livre Java

Tela Swing – SubMacro + SGBD

Page 12: Software Livre Java

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.

Page 13: Software Livre Java

Tela de Design iReports

Page 14: Software Livre Java

Exemplo de Relatório

Page 15: Software Livre Java

Exemplo de Gráfico

Page 16: Software Livre Java

Integração com Web­Services● Web­Services: permitir que sistemas de diferentes empresas e órgãos do 

governo possam trocar informações via Internet.● Ex. NF­eletrô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

Page 17: Software Livre Java

Outros Utilitários● Envio de e­mail 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........

Page 18: Software Livre Java

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!