SlideShare uma empresa Scribd logo
Inovando na Plataforma JavaEteg Tecnologia da Informação
PalestranteWanderson Santos (@wanswins)Arquiteto CorporativoLíder Técnico / DesenvolvedorInstrutor Tecnológico
O que é inovação?
“Idéiasnovas ou melhoradas, de produtos, serviços ou processos
...aplicadas ao mercado...
...que aumentam a eficiência do processo produtivo...
...ou que geram novo ou aprimorado produto.
O que é plataforma?
Inovando na Plataforma Java
Inovando na Plataforma Java
Inovando na Plataforma Java
Plataforma...ElevaçãoPadrãoEstruturaConfiançaSustentaçãoSegurança
A plataforma tecnológica é o conjunto que sustenta um software
A plataforma tecnológica provê os elementos básicos para criação, execução e manutenção de um software
Java?ColdFusion?Database?.NET?Win32?Ruby?Qual sua plataforma?VB?Python?Delphi?PHP?PowerBuilder?ASP?
A plataforma Java é o conjunto que sustenta um software Java
A plataforma Java é a máquina virtual + bibliotecas básicasO que seria do Java sem o tipo inteiro?
A plataformaJava = JVM + JARs essenciaisVoltamos a sopa de letrinhas! 
Porque inovar em Java?
Manter os ativos (bibliotecas, utilitários, etc.)Vamos converter nossas bibliotecas para Java/.NET!
Manter o conhecimentoVamos aprender como gerar um relatório em Ruby!
Menor esforço para treinamento do timeVamos reaprender toda uma plataforma!
Bibliotecas e PadrõesJMS?JPA?Commons?Java Mail?Quartz?Jasper?iText?Session Beans?Servlets?Hibernate?Tomcat?JAX-WS?Spring Security?
Que tal mantertodas elas?Próximo slide por favor! 
LinguagemF#?C#?Scala?XML?Pascal?UML?Java?Ruby?Python?VB?Cobol?Latim?C++?Groovy?#FAIL? rs
Linguagemfaz parte da plataforma?Tempooooooooooooo...
Sim, a linguagem Javafaz parte da plataformaJava(Você gosta da linguagem Java?)
Mas, a linguagem Java é somente uma das partes da plataforma Java!Vivaaaaaaaaaaaaaa!!! 
Linguagens na JVMGroovy (JSR-241)ScalaJRubyFantom ColdFusionJython (Python)Rhino (JavaScript) – já integrada ao Java 6
Linguagens dinâmicasÉ a tendência atual do mercadoO resultado do código é instantâneo sem necessidade do ciclo compilação/implantaçãoÉ possível carregar um novo código em tempo de execução, sem necessidade de compilação, contrato de interface, etc.Cenários: regras de negócio, camada de visão, etc.
Porque usar outra linguagem?Mais produtivasMenos verbosas que JavaInjetam métodos de apoio nas bibliotecas essenciais (Java Class Library)[1,2,3].each { println “numero $it” } Mais poderosasMétodos anônimos (você ainda vai usar um!)Closures
Porque não usar...Podem ser mais lentas que linguagem JavaPara maioria dos casos não afetaA produtividade é mais importante!Atenda o cliente, depois otimize o códigoVocê pode voltar pro Java quanto precisar!Suporte a IDEs (algumas)As mais consolidadas já possuem bom suporte, inclusive para debug
Como começar?Sua equipe é menor e você pode treinar a equipe? CHOOSE YOUR DESTINY Não tenha medo, é simples!Sua equipe é grande e o tempo pra aprendizado é curto?Vá de Groovy! (mesmo que o projeto já tenha começado)
Porquê Groovy?Padrão da Plataforma Java (JSR-241)Já possui um bom ecossistemaAceita sintaxe Java em .groovyCurva de aprendizado reduzida -  você pode aprender sob demanda!Se não sabe em Groovy, faça em Java!Why Groovy? http://dzone.com/j9lQ
Entidade em Javapublic class Usuario {private String nome;private Date dataNascimento;public String getNome() {	return nome;   }   /*..não cabe no slide! */}
Entidade em Groovyclass Usuario {String nomeDate dataNascimento}Mais em Produtividade em Java com GrailsLet’s Groovy! 
FrameworksHibernate?JSF 1?JSP?WebWork?Struts 2?JSF 2?Struts 1?Wicket?Spring?Grails?Tapestry 5?EJB 3?
InterfaceServiço da AplicaçãoEntidades (Domínio)Acesso a DadosUni-dune-tê!
Tendência: Full-stack FrameworkVamos juntar as melhores peças!
GSPSpringGORM / JPAGORM (Hibernate)
grails create-app MinhaApp4 horas em 1 minuto!
Framework full-stack que une os frameworks Java mais utilizados (Hibernate, Spring, etc.)Utiliza linguagem Groovy ou JavaTodo feito em Java, mas você programa em Groovy!Utiliza “Programação por Convenção”Elimina necessidade de configuração
GrailsÉ mantida pela SpringSource, do grupo VMWare Sim, a responsável pelo Spring FrameworkExtensível através de pluginsTem plugin pra TUDO! Baseado em bibliotecas Java que você conhece ou vai conhecer:Autenticação e AutorizaçãoAcesso a bancos NOSQLExecução em BackgroundRelatórios e muito mais...
Como utilizar Grails?Baixar o pacote mais recente em www.grails.orgDescompactar em um pasta e adicionar $GRAILS_HOME no PATHCriar a aplicação: grails create-app minhaAppAdicionar entidades de Domain e Controller seguindo a convenção Eclipse, IDEA ou vi/notepad Rodar a aplicação localmentegrails run-appMas já? 
Mais Grails? Acesse: Produtividade em Java com Grails
Desktop X WebImplantação Ubíqua X Usabilidade
Tendência: Interfaces RicasVamos juntar as melhores peças!
AJAX X RIADuas abordagens
Também é J, rs 
Aprenda jQuery de forma guiada?www.visualjquery.comTutoriais são excelentes!
Tudo em casa!
Mais JavaFX? Acesse: Aplicações de Interface Rica na Plataforma Java
Obrigado!wanderson@eteg.com.brTwitter: @wanswins

Mais conteúdo relacionado

PPTX
Java virtual machine quantas linguas fala a jvm2
PPTX
O Spring está morto! Viva o Spring!
PDF
Como criar testes rápidos e robustos com Cypress
PDF
Arquitetura de microsserviços
PDF
MVC com Zend Framework
PPTX
Microsserviços, moda ou necessidade?
PDF
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...
PDF
Salada mista com: Zabbix, Puppet e Docker
Java virtual machine quantas linguas fala a jvm2
O Spring está morto! Viva o Spring!
Como criar testes rápidos e robustos com Cypress
Arquitetura de microsserviços
MVC com Zend Framework
Microsserviços, moda ou necessidade?
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...
Salada mista com: Zabbix, Puppet e Docker

Mais procurados (19)

PPTX
Começando errado com php
PDF
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
PPTX
A saga do desenvolvedor java
PDF
Apresentação sobre Zabbix na iDEZ 2012
PDF
DrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian Ferrari
PDF
Java não é tão difícil quanto parece
KEY
DevOps, NoOps...afinal que raios é isso?
PDF
IFSP 2015 - Cultura DevOps
PDF
Quem e dev ops
PDF
Gerenciamento e automatização de configuração de uma infraestrutura com Puppet
PDF
Discutindo DevOps na pratica, por Danilo Sato
PPTX
Acelere - e melhore! - o feedback com testes automatizados rápidos
KEY
Sistemas para o Mundo Real
PDF
TDC2017 | Florianópolis - Trilha Java Melhorando a performance do seu Código ...
PPSX
Bugs, DVCS e tools
PDF
Composição e Integração de Sistemas em 2013
PPTX
#Moving br workshop
PDF
Zend Framework Estrutura e TDD
PPTX
Testes E2E em Cypress com JS
Começando errado com php
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
A saga do desenvolvedor java
Apresentação sobre Zabbix na iDEZ 2012
DrupalCamp SP 2015 - DevOps, por onde começar? Por Sebastian Ferrari
Java não é tão difícil quanto parece
DevOps, NoOps...afinal que raios é isso?
IFSP 2015 - Cultura DevOps
Quem e dev ops
Gerenciamento e automatização de configuração de uma infraestrutura com Puppet
Discutindo DevOps na pratica, por Danilo Sato
Acelere - e melhore! - o feedback com testes automatizados rápidos
Sistemas para o Mundo Real
TDC2017 | Florianópolis - Trilha Java Melhorando a performance do seu Código ...
Bugs, DVCS e tools
Composição e Integração de Sistemas em 2013
#Moving br workshop
Zend Framework Estrutura e TDD
Testes E2E em Cypress com JS
Anúncio

Destaque (20)

PDF
Apostila Tecnologia da Informação (TI)
PPS
Mito da Caverna
PPTX
Procesadores de texto
PPTX
Busquedas avanzadas
PDF
Retrato do Brasil Janeiro 2013
PPTX
Presentación de finanzas publicas
PPS
Sexta fei
PPT
Stephen William Hawking
PDF
Ministerio feminino por alan rennê alexandrino lima
PPT
S U N S E T O U R
PPTX
PDF
Detecção de quedas em robôs móveis com visão monocular linear
PDF
Retrato do Brasil outubro hp
PDF
Un desayuno especial
PPTX
Um olhar ambiental na escola polivalente
PDF
LoR-Werbaneth
PDF
CCIUDADANA
PDF
Visanet 5 pgr cometeu crime
PPTX
Mudança de Vida
PDF
Relatório CPMI do Cachoeira parte 3
Apostila Tecnologia da Informação (TI)
Mito da Caverna
Procesadores de texto
Busquedas avanzadas
Retrato do Brasil Janeiro 2013
Presentación de finanzas publicas
Sexta fei
Stephen William Hawking
Ministerio feminino por alan rennê alexandrino lima
S U N S E T O U R
Detecção de quedas em robôs móveis com visão monocular linear
Retrato do Brasil outubro hp
Un desayuno especial
Um olhar ambiental na escola polivalente
LoR-Werbaneth
CCIUDADANA
Visanet 5 pgr cometeu crime
Mudança de Vida
Relatório CPMI do Cachoeira parte 3
Anúncio

Semelhante a Inovando na Plataforma Java (20)

PPT
Apostila de Fundamentos Java
PDF
Produtividade em Java com Grails
PDF
Desenvolvimento web com python e django
PPTX
Domain-Driven Design
ODP
Spring roo produtividade no java
ODP
Linguagens Dinamicas na JVM
PPS
Web Tools Pt B R
PPS
Automação de testes para equipes agile
PDF
Cloud Computing - Java no Google App Engine
DOCX
Trabalho 4 Semestre e 5 Semestre 2015
PDF
Implementando Implementando eXtreme treme Programming rogramming em em Java Java
PPTX
Criando Aplicações .NET com o TheWebMind
PDF
Test day 2012
PPT
Django: Uso de frameworks ágeis para desenvolvimento web
PPTX
Frameworks em Java
PDF
Aula 1 1
PDF
Desenvolvendo Aplicações Livres em Java - João Avelino Bellomo Filho
DOCX
Academia do Arquiteto Globalcode
PPTX
Modularidade na Web com Java: Desenvolvimento OSGI Web com Eclipse Virgo
PDF
Automação de Teste em Front End - Caipira Ágil
Apostila de Fundamentos Java
Produtividade em Java com Grails
Desenvolvimento web com python e django
Domain-Driven Design
Spring roo produtividade no java
Linguagens Dinamicas na JVM
Web Tools Pt B R
Automação de testes para equipes agile
Cloud Computing - Java no Google App Engine
Trabalho 4 Semestre e 5 Semestre 2015
Implementando Implementando eXtreme treme Programming rogramming em em Java Java
Criando Aplicações .NET com o TheWebMind
Test day 2012
Django: Uso de frameworks ágeis para desenvolvimento web
Frameworks em Java
Aula 1 1
Desenvolvendo Aplicações Livres em Java - João Avelino Bellomo Filho
Academia do Arquiteto Globalcode
Modularidade na Web com Java: Desenvolvimento OSGI Web com Eclipse Virgo
Automação de Teste em Front End - Caipira Ágil

Último (19)

PPTX
Aula 18 - Manipulacao De Arquivos python
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PDF
Apple Pippin Uma breve introdução. - David Glotz
PDF
Processos na gestão de transportes, TM100 Col18
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PDF
Aula04-Academia Heri- Tecnologia Geral 2025
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Aula 18 - Manipulacao De Arquivos python
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Apple Pippin Uma breve introdução. - David Glotz
Processos na gestão de transportes, TM100 Col18
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Aula04-Academia Heri- Tecnologia Geral 2025
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
COBITxITIL-Entenda as diferença em uso governança TI
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Custos e liquidação no SAP Transportation Management, TM130 Col18
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...

Inovando na Plataforma Java