Software Livre Java

Post on 21-Dec-2014

2.381 views 0 download

description

Usando Software Livre Java para Desenvolvimento de Software(Edilmar Lima Alves/ JUGMS)Usando Software Livre Java para Desenvolvimento de SoftwareSequência de Tópicos da Apresentação:1. Apresentação e Visão Geral da Nova Plataforma Java (open­source)2. IDEs: Eclipse e NetBeans3. Frameworks para Desenvolvimento Desktop e Web4. Integração com SGBDs5. Relatórios e Gráficos6. Integração com Web Services7. Outros Utilitários8. 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.

Transcript of Software Livre Java

1º Dia da Liberdade de Software

Usando Software Livre Javapara Desenvolvimento de Software

Edilmar AlvesSetembro/2008

edilmaralves@intersite.com.br

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

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

Apresentação da Plataforma 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/

Apresentação da Plataforma 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.

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”

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

Tela Web – SubMacro + SGBD

Tela Swing – SubMacro + SGBD

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.

Tela de Design iReports

Exemplo de Relatório

Exemplo de Gráfico

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

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........

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!