Você está na página 1de 61

Aplicando Tecnologias

Java em seu Ambiente


Empresarial

Igor Borlot Borba


Equipe de Tecnologia e Engenharia
igor@vixteam.com.br
Vixteam Consultoria & Sistemas
• Nasceu nos laboratórios da UFES em 1995;
• Formada por mais de 100 profissionais certificados;
• Referência em projetos de TI a nível mundial;
• Fábrica de software para construção sob medida.
Unidades Especialistas
Agenda

• Visão Geral
• Frameworks
• Ferramentas
• Casos Práticos
• Recomendações
Visão Geral

• O que anda acontecendo em Java?


o Completando 10 anos de mercado;
o Aderência pelo mercado brasileiro;
o JSE 5 com novos recursos;
o JSE 6 em desenvolvimento;
o JEE 5 com especificação aprovada.
Visão Geral
J2EE
PMD AndroMDA
EJB Hibernate EMF

JSP JUnit Struts JPOX

Servlets Eclipse iBATIS


DBUnit JTiger MyFaces
Emma
Visão Geral
• Perguntas típicas:
o Por que usamos tantas classes para
implementar uma regra negócio?
o Encontrei uma documentação em alemão da
ferramenta, e agora?
o Quem dá suporte a este framework?
o Como consigo gerar código mais rápido?
o O que faço com esses plugins do Eclipse?
Visão Geral - Arquitetura
Visão Geral - Certificação
Agenda

• Visão Geral
• Frameworks
• Ferramentas
• Casos Práticos
• Recomendações
Frameworks

• Aplicado a um projeto:
Frameworks

• Aplicado a uma organização:


Frameworks

• Motivos de utilização:
o Reduzir tempo de codificação;
o Reduzir níveis de complexidade;
o Reduzir tempo de aprendizado e adaptação;
o Facilitar a criação de “pontos de extensão”;
o Padronizar as ações dos desenvolvedores;
o Simplificar os testes sobre o sistema.
Frameworks

• AndroMDA
• EMF (Eclipse Modeling Framework)
• Hibernate
• iBATIS
• JUnit
• DBUnit
• HttpUnit
• Axis
• MyFaces
Frameworks

• AndroMDA
o Gera código a partir do modelo de classes;
o UML 2.0;
o Frameworks suportados:
 EJB 2 / 3, Spring, Hibernate, Struts, JSF, Axis e
jBPM.
o Permite criação de “cartuchos”.
Frameworks
Frameworks

• EMF (Eclipse Modeling Framework)


o Plataforma Eclipse;
o Aplicado em ferramentas de modelagem;
o Modelos EMF podem ser criados a partir de:
 Classes Java Anotadas;
 Documentos XMI;
 Modelos Rational Rose.
Frameworks
Frameworks

• Hibernate
o Ferramentas de desenvolvimento;
o Mecanismo de persistência pronto;
o Mapeamento Objeto/Relacional:
 Associação, herança, polimorfismo,
composição e coleções.
o Disponível também em .NET.
Frameworks

• Hibernate Tools for Eclipse


Frameworks

• iBATIS
o Mapeamento O/R com SQL e Stored
Procedures;
o Curva de aprendizado pequena;
o Configuração ágil;
o Ótima documentação;
o Disponível também em .NET.
Frameworks

• iBATIS
Frameworks

• JUnit
o Automatização dos testes unitários;
o Extensão do modelo de casos de teste;
o Torna objetiva a execução do teste;
o Integração ferramentas de desenvolvimento;
o Realização de “testes regressivos”;
o Redução de tempo nos próximos ciclos.
Frameworks
Frameworks

• DBUnit
o Extensão dos casos de teste do JUnit;
o Consistência do modelo de dados;
o Oferece mecanismo de exportação;
o Carga do banco de dados antes dos testes;
o Métodos de comparação.
Frameworks
Frameworks

• HttpUnit
o Extensão dos casos de teste do JUnit;
o Emula simular ações do browser como:
 Envio de formulário;
 Autenticação;
 Cookies;
 Redirecionamento de Página;
o Permite examinar conteúdo de páginas.
Frameworks

HTTP
Frameworks

• Axis
o Projeto “SOAP4J”;
o SOAP 1.1 e 1.2;
o Implementação em C++;
o Ferramentas de monitoramento de pacotes;
o Criação de proxy (cliente) a partir de WSDL.
Frameworks

HTTP
Frameworks

• MyFaces
o Defindo pela Java Community Process (JCP);
o Modelo baseado em eventos;
o Ótimo mecanismo de extensibilidade;
o Subprojetos de componentes de UI;
o Subprojetos de frameworks AJAX.
Frameworks
Frameworks

JSF Struts
• Modelo padronizado de • Maduro e testado
componentes UI
• Mecanismo robusto de • Rica documentação
gerenciamento de
eventos
• Plugar diversos kits de • Grande base de
renderização desenvolvedores
• Definido pela JCP • Projeto Open Source
Agenda

• Visão Geral
• Frameworks
• Ferramentas
• Casos Práticos
• Recomendações
Ferramentas

• Borland Together Architect


• IBM Rational Architect
• Exadel Studio Pro
• MyEclipse IDE
• IBM Ration Application Developer
• Oracle Jdeveloper 10g
• Netbeans 5
• Emma
• PMD
Ferramentas

• Borland Together Architect


o Geração código durante a modelagem;
o Criação e aplicação patterns conhecidos;
o Templates “design and reuse”.
Ferramentas
Ferramentas

• IBM Rational Software Architect


o Geração código durante a modelagem;
o Criação e aplicação patterns conhecidos;
o Estender sua API;
o Criação de templates: “design and reuse”.
Ferramentas
Ferramentas

• Exadel Studio Pro


o Editor visual de páginas;
o Criação de templates de páginas;
o Editores avançados: JSF, Struts e Hibernate;
o Biblioteca de componentes UI JSF.
Ferramentas
Ferramentas

• MyEclipse IDE
o Editor visual de páginas;
o Editores avançados: JSF, Struts e Hibernate;
o Modelagem UML integrada.
Ferramentas
Ferramentas

• IBM Rational Application Developer


o Baseado na plataforma Eclipse;
o Editor visual de páginas;
o Editores avançados: JSF e Struts;
o Ferramenta de modelagem UML integrada;
o Automatização de geração de código.
Ferramentas
Ferramentas

• Oracle JDeveloper 10g


o Editor visual de páginas;
o Editores avançados: JSF e Struts;
o Ferramenta de modelagem UML;
o ADF (Advanced Development Framework);
o Extensão com plugins.
Oracle JDeveloper 10g
Ferramentas

• NetBeans 5
o Pacote de desenvolvimento J2ME;
o Ferramenta de modelagem UML;
o Profiler de detecção de “leaks” de memória;
o Plataforma extensível.
Ferramentas
Ferramentas

• Emma
o Relatório de “cobertura de código”;
o Aplicar métricas de qualidade;
o Identificar estruturas que não estão coberta
por testes como:
 Classes;
 Métodos;
 Blocos;
 Linhas.
Ferramentas
Ferramentas

• PMD
o Controle da qualidade e boas práticas de
codificação;
o Customização de regras de codificação;
o Identifica os seguintes problemas:
 Bugs;
 Código inutilizável;
 Blocos desnecessários;
 Código morto;
 Código duplicado.
Ferramentas
Agenda

• Visão Geral
• Frameworks
• Ferramentas
• Casos Práticos
• Recomendações
Casos Práticos

• TeamAudit
• Demonstração 01
o Desenvolvimento com Produtividade
• Demonstração 02
o Desenvolvimento com Qualidade
TeamAudit
TeamAudit
TeamAudit

Reduz a possibilidade de • Aumenta oportunidades


perdas
Protege sua imagem • Agrega valor
Expõe riscos e falhas • Adota cultura de compliance
Fortalece a governança • Fornece transparência na Gestão
corporativa
Garante maior crescimento • Atrai investidores
e saúde do negócio
Compartilha responsabilidade • Garante padronização dos
de gestão de risco Processos
Agenda

• Visão Geral
• Frameworks
• Ferramentas
• Casos Práticos
• Recomendações
Recomendações

• Utilize padrões de projeto;


• Integre ferramentas e frameworks;
• Comece pelo ambiente Eclipse, ...
• Se precisar pesquise por Plugins, ...
• Se não encontrar, desenvolva o seu!
Obrigado

Igor Borlot Borba


igor@vixteam.com.br
+55 (27) 3357-1800
www.vixteam.com.br

Você também pode gostar