SlideShare uma empresa Scribd logo
1 de 77
JAVA NO MUNDO REAL
       Saulo Arruda
Apresentação
Saulo Arruda <sauloarruda@gmail.com>
 Especialista em Melhoria do Processo de Software pela UFLA

 Diretor de TI da Agence Consultoria

 Diretor Pedagógico da Agence Educacional

 Coordenador do JUG-MS

 10 anos de experiência em projetos de software
Agenda

Ecossistema Java
Mercado JSE

Mercado JEE

Mercado JME

Conclusões
Ecossistema Java

Java é uma linguagem de programação orientada a objetos;

A tecnologia Java é utiliza em todos os principais segmentos da
indústria, presente em uma ampla gama de dispositivos;

A Plataforma Java é composta pela Java Virtual Machine (JVM)
e pela Java Application Programming Interface (API);

Java Certification, Java Comunity Process (JCP), Java User
Group (JUG), java.net
Onde Java é usado?
A tecnologia Java está presente em mais de 4,5 bilhões de
dispositivos, incluindo:

  Mais de 800 milhões de PCs;

  2,1 bilhões de telefones celulares e outros dispositivos portáteis;

  3,5 bilhões de cartões inteligentes;

  Além de set-top boxes, impressoras, webcams, jogos, sistemas
  de navegação para automóveis, terminais lotéricos, dispositivos
  médicos, guichês de pagamento de estacionamento etc.
Porque os desenvolvedores
       preferem Java?
Criar um software em uma plataforma e executá-lo em praticamente
qualquer outra;
Criar programas para execução em navegadores e serviços da Web;
Desenvolver aplicativos no lado do servidor usados tanto em fóruns,
lojas e pesquisas on-line, como no processamento de formulários
HTML, e muito mais;
Combinar aplicativos ou serviços usando a linguagem Java para criar
aplicativos ou serviços altamente personalizados;
Criar aplicativos potentes e eficazes para telefones celulares,
processadores remotos, produtos de consumo de baixo custo e
praticamente qualquer outro dispositivo com tecnologia digital;
Market Share: Livros Vendidos
Market Share: TIOBE Index
Market Share: Empregos
Edições do Java
Edições do Java


Java está disponível em três edições:
Edições do Java


Java está disponível em três edições:

  JSE (Java Standard Edition): aplicações desktop/standalone;
Edições do Java


Java está disponível em três edições:

  JSE (Java Standard Edition): aplicações desktop/standalone;

  JME (Java Micro Edition): aplicações para dispositivos móveis;
Edições do Java


Java está disponível em três edições:

  JSE (Java Standard Edition): aplicações desktop/standalone;

  JME (Java Micro Edition): aplicações para dispositivos móveis;

  JEE (Java Enterprise Edition): aplicações web coorporativas;
Agenda

Ecossistema Java

Mercado JSE
Mercado JEE

Mercado JME

Conclusões
Mercado JSE


Aplicações Desktop Standalone;

Faz amplo uso da API Java;

Adoção na maioria das Universidades;

Atualmente na versão JRE 1.6;
Principais Recursos
Swing: Toolkit para desenvolvimento de interfaces gráficas
independentes de sistema operacional.

JDBC: Conectividade com banco de dados independente de
fornecedor e sistema operacional.

JavaWeb Start: Instalação, execução e atualização de aplicações
pela Web.

JavaFX: Tookit para interface gráficas ricas para web, desktop e
mobile;
Principais Recursos

Linguagens Dinâmicas: Possibilidade de uso de outras
linguagens como, por exemplo:

  Groovy

  Scala

  JRuby , Rhino (JavaScript), Quercus (PHP), Jython

  e muitas outras...
Frameworks

Spring Framework: várias ferramentas para desenvolvimento de
aplicações OO, como IoC e DI, além de milhares de utilitários;

JUnit: Framework para testes unitários;

Hibernate: framework para persistência de objetos;

Ant e Maven: ferramentas para build de projetos;

Velocity e Freemarker: ferramentas para uso de templates;
Aplicações

Jude: Ferramenta para modelagem UML;

CrashPlan: Ferramenta de Backup;

Eclipse, Netbeans, IntelliJ IDEA: IDEs para desenvolvimento
em Java e outras linguagens;

Programa do IRPF: Solução para declaração do Imposto de
Renda do Governo Federal.
Oportunidades
Oportunidades
Amplo uso da tecnologia tanto no meio acadêmico quanto no
mercado;
Oportunidades
Amplo uso da tecnologia tanto no meio acadêmico quanto no
mercado;

Novas opções como linguagens dinâmicas e JavaFX proporcionam um
novo mercado;
Oportunidades
Amplo uso da tecnologia tanto no meio acadêmico quanto no
mercado;

Novas opções como linguagens dinâmicas e JavaFX proporcionam um
novo mercado;

Maior comunidade do mundo a sua disposição: JUG-MS, GUJ,
JavaFree, etc...
Oportunidades
Amplo uso da tecnologia tanto no meio acadêmico quanto no
mercado;

Novas opções como linguagens dinâmicas e JavaFX proporcionam um
novo mercado;

Maior comunidade do mundo a sua disposição: JUG-MS, GUJ,
JavaFree, etc...

Hoje Java é a primeira linguagem que todo programador aprende, isto
é, mais gente disponível no mercado.
Oportunidades
Amplo uso da tecnologia tanto no meio acadêmico quanto no
mercado;

Novas opções como linguagens dinâmicas e JavaFX proporcionam um
novo mercado;

Maior comunidade do mundo a sua disposição: JUG-MS, GUJ,
JavaFree, etc...

Hoje Java é a primeira linguagem que todo programador aprende, isto
é, mais gente disponível no mercado.

Performance não é mais um problema!
Ameaças
Ameaças

Nos últimos anos, a evolução da plataforma Java está muito mais
lenta;
Ameaças

Nos últimos anos, a evolução da plataforma Java está muito mais
lenta;

Várias empresas com problemas usando Java estão buscando
alternativas: .NET, Ruby On Rails, PHP, Python;
Ameaças

Nos últimos anos, a evolução da plataforma Java está muito mais
lenta;

Várias empresas com problemas usando Java estão buscando
alternativas: .NET, Ruby On Rails, PHP, Python;
Ameaças

Nos últimos anos, a evolução da plataforma Java está muito mais
lenta;

Várias empresas com problemas usando Java estão buscando
alternativas: .NET, Ruby On Rails, PHP, Python;



Na edição JSE o céu está mais azul...
Agenda

Ecossistema Java

Mercado JSE

Mercado JEE
Mercado JME

Conclusões
Mercado JEE

Aplicações Web coorporativas;

Envolve grandes projetos ou pequenas aplicações;

Uso de diversas tecnologias dentro da plataforma Java para
desenvolvimento de aplicações distribuídas;

Atualmente na versão JEE 1.5
Principais Recursos
Aplicações Web: Sistemas que provêem páginas dinâmicas para
Web;

JavaServer Faces (JSF): Framework para desenvolvimento de
páginas web;

Java Persistence API (JPA): Framework para persistência;

Java Transaction API: Serviço de transação distribuída;

Webservices: Tecnologias para implementação de Webservices;
Principais Recursos

Enterprise Java Beans (EJB): Serviços distribuídos de regras
de negócio;

  Session Bean: Objeto que é instanciado e usado
  remotamente.

  Message-Driven Bean: Objeto que processa mensagens de
  forma assíncrona.
Frameworks
RichFaces, ICEFaces, MyFaces: Componentes para JSF;

SpringMVC, Struts2, VRaptor, JBoss Seam: Alternativas ao
JavaServer Faces como framework Web;

JBoss Rules/Drools: Framework para implementação de
regras;

JBoss JBPM: Implementação de Workflow;

Open EJB: EJB fora de um servidor de aplicação;
Servidores de Aplicação

JBoss AS

IBM Websphere

SUN Glassfish

Oracle/BEA Weblogic

Apache Geronimo
Aplicações


IRPF: Agora falando de toda a solução;

E-SAJ do TJMS: Vários serviços on-line usando JEE;

SAP: Maior ERP do mundo;

Websites: Claro, TIM, TAM, Casas Bahia, Banco do Brasil, ...
Oportunidades
Oportunidades


O Governo e as Empresas adotam Java!
Oportunidades


O Governo e as Empresas adotam Java!

Bons desenvolvedores JEE tem ALTA empregabilidade;
Oportunidades


O Governo e as Empresas adotam Java!

Bons desenvolvedores JEE tem ALTA empregabilidade;

Programadores JEE tem maiores salários;
Ameaças
Ameaças


Grandes dificuldades com implantação de Sistemas JEE;
Ameaças


Grandes dificuldades com implantação de Sistemas JEE;

Empresas abandonando a plataforma Java, especialmente JEE;
Ameaças


Grandes dificuldades com implantação de Sistemas JEE;

Empresas abandonando a plataforma Java, especialmente JEE;

Curva de aprendizado MUITO alta para um bom desenvolvedor;
Agenda

Ecossistema Java

Mercado JSE

Mercado JEE

Mercado JME
Conclusões
Mercado JME

Desenvolvimento para dispositivos Móveis

Usado em celulares, cartões com chip, TV digital, Blueray,
carros, impressoras, robôs, etc.

Uso da linguagem Java para desenvolvimento para praticamente
qualquer tipo de dispositivo limitado.
Principais Recursos

Boa API de programação incluindo: Bluetooth, Gráficos 3D,
Webservices, Multimídia, Internacionalização, Gateway de
Pagamentos, SMS, etc.

Integração com Java FX;

Extensões proprietárias de fabricantes;
Frameworks

Floggy: Persistência de objetos;

LWUIT: Tookit para interface gráfica;

Google Maps API: Acesso a mapas;

Polish: Diversas ferramentas para desenvolvimento JME: UI
Toolkit, Persistência, Comunicação Client/Server, Banco de
Dados e Portabilidade;
Aplicações


Gmail: Acesso ao e-mail do google

Opera Mini: Navegador Web;

Jogos EA Mobile: diversos jogos em Java ME;

Skype Lite, eBuddy: ligações VOIP e instant messenger
Oportunidades
Oportunidades


Hoje a maioria dos telefones celular do mercado rodam JME;
Oportunidades


Hoje a maioria dos telefones celular do mercado rodam JME;

Escassez de profissionais especialistas na tecnologia;
Oportunidades


Hoje a maioria dos telefones celular do mercado rodam JME;

Escassez de profissionais especialistas na tecnologia;

Android roda JME!
Ameaças
Ameaças


iTunes Store (iPhone) cresceu rapidamente e abocanhou uma
grande fatia do mercado! Falta um ambiente similar para JME;
Ameaças


iTunes Store (iPhone) cresceu rapidamente e abocanhou uma
grande fatia do mercado! Falta um ambiente similar para JME;

Ainda existem muitas limitações para aplicações JME;
Ameaças


iTunes Store (iPhone) cresceu rapidamente e abocanhou uma
grande fatia do mercado! Falta um ambiente similar para JME;

Ainda existem muitas limitações para aplicações JME;

Dificuldades de portabilidade entre inúmeros aparelhos;
Agenda

Ecossistema Java

Mercado JSE

Mercado JEE

Mercado JME

Conclusões
Devo aprender Java?
Como começar?
O quanto ao futuro?
Mais Perguntas?
Não é necessário muita força para fazer as coisas, mas é
 preciso uma enorme força para decidir o que fazer.

                   Elbert Hubbard
Obrigado!


Saulo Arruda <sauloarruda@gmail.com>

  Meu Blog (www.sauloarruda.eti.br)

  Agence (www.agence.com.br)

  JUG-MS (www.jugms.com.br)
Licença


Você pode:

        copiar, distribuir, exibir e executar a obra
       criar obras derivadas
 Sob as seguintes condições:

      Atribuição. Você deve dar crédito ao
      autor original, da forma especificada
      pelo autor ou licenciante.
Referências
Saiba mais sobre a tecnologia Java (http://www.java.com/pt_BR/about/)

About the Java Technology (http://java.sun.com/docs/books/tutorial/
getStarted/intro/definition.html)

JavaEE Technologies (http://java.sun.com/javaee/technologies/)

The JavaEE 5 Tutorial (http://java.sun.com/javaee/5/docs/tutorial/doc/)

Java EE Compatibility (http://java.sun.com/javaee/overview/compatibility.jsp)

JME - The Most Ubiquitous Application Plataform for Mobile Devices (http://
java.sun.com/javame/index.jsp)

Mais conteúdo relacionado

Mais procurados

Projetos governamentais: ajustes no seu template Joomla!
Projetos governamentais: ajustes no seu template Joomla!Projetos governamentais: ajustes no seu template Joomla!
Projetos governamentais: ajustes no seu template Joomla!Trídia Criação
 
Introdução ao Projeto de Plataformas de Software: o quê, por que, como
Introdução ao Projeto de Plataformas de Software: o quê, por que, comoIntrodução ao Projeto de Plataformas de Software: o quê, por que, como
Introdução ao Projeto de Plataformas de Software: o quê, por que, comoRodrigo Reis
 
Desenvolvimento de Aplicativos Móveis Multiplataforma
Desenvolvimento de Aplicativos Móveis MultiplataformaDesenvolvimento de Aplicativos Móveis Multiplataforma
Desenvolvimento de Aplicativos Móveis MultiplataformaJose Augusto Cintra
 
Dispositivos Móveis - BlackBerry
Dispositivos Móveis - BlackBerryDispositivos Móveis - BlackBerry
Dispositivos Móveis - BlackBerryValdir Junior
 
Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, ...
Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, ...Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, ...
Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, ...Pedro Edson Silva Barros
 
Gestão de produtos: como aumentar as chances de sucesso do seu software
Gestão de produtos: como aumentar as chances de sucesso do seu softwareGestão de produtos: como aumentar as chances de sucesso do seu software
Gestão de produtos: como aumentar as chances de sucesso do seu softwareJoaquim Torres
 
Aula: Evolução da computação móvel
Aula: Evolução da computação móvelAula: Evolução da computação móvel
Aula: Evolução da computação móvelJanynne Gomes
 
O Diferencial de uma Estratégia Mobile...e Multiplataforma!
O Diferencial de uma Estratégia Mobile...e Multiplataforma!O Diferencial de uma Estratégia Mobile...e Multiplataforma!
O Diferencial de uma Estratégia Mobile...e Multiplataforma!Xpand IT
 

Mais procurados (10)

Projetos governamentais: ajustes no seu template Joomla!
Projetos governamentais: ajustes no seu template Joomla!Projetos governamentais: ajustes no seu template Joomla!
Projetos governamentais: ajustes no seu template Joomla!
 
Introdução ao Projeto de Plataformas de Software: o quê, por que, como
Introdução ao Projeto de Plataformas de Software: o quê, por que, comoIntrodução ao Projeto de Plataformas de Software: o quê, por que, como
Introdução ao Projeto de Plataformas de Software: o quê, por que, como
 
Joomla e acessibilidade
Joomla e acessibilidadeJoomla e acessibilidade
Joomla e acessibilidade
 
Palestra Android
Palestra AndroidPalestra Android
Palestra Android
 
Desenvolvimento de Aplicativos Móveis Multiplataforma
Desenvolvimento de Aplicativos Móveis MultiplataformaDesenvolvimento de Aplicativos Móveis Multiplataforma
Desenvolvimento de Aplicativos Móveis Multiplataforma
 
Dispositivos Móveis - BlackBerry
Dispositivos Móveis - BlackBerryDispositivos Móveis - BlackBerry
Dispositivos Móveis - BlackBerry
 
Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, ...
Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, ...Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, ...
Desenvolvimento de Aplicações para Dispositivos Móveis: Aplicativos Nativos, ...
 
Gestão de produtos: como aumentar as chances de sucesso do seu software
Gestão de produtos: como aumentar as chances de sucesso do seu softwareGestão de produtos: como aumentar as chances de sucesso do seu software
Gestão de produtos: como aumentar as chances de sucesso do seu software
 
Aula: Evolução da computação móvel
Aula: Evolução da computação móvelAula: Evolução da computação móvel
Aula: Evolução da computação móvel
 
O Diferencial de uma Estratégia Mobile...e Multiplataforma!
O Diferencial de uma Estratégia Mobile...e Multiplataforma!O Diferencial de uma Estratégia Mobile...e Multiplataforma!
O Diferencial de uma Estratégia Mobile...e Multiplataforma!
 

Destaque

Alta disponibilidade com o oracle _11gpdf
Alta disponibilidade com o oracle _11gpdfAlta disponibilidade com o oracle _11gpdf
Alta disponibilidade com o oracle _11gpdfRodrigo Raposo
 
Gerenciamento do oracle 11g r2)
Gerenciamento do oracle 11g r2)Gerenciamento do oracle 11g r2)
Gerenciamento do oracle 11g r2)Rodrigo Raposo
 
Implementando Testes Unitários em Java - Manoel Pimentel
Implementando Testes Unitários em Java - Manoel PimentelImplementando Testes Unitários em Java - Manoel Pimentel
Implementando Testes Unitários em Java - Manoel PimentelManoel Pimentel Medeiros
 
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...Tchelinux
 

Destaque (7)

Alta disponibilidade com o oracle _11gpdf
Alta disponibilidade com o oracle _11gpdfAlta disponibilidade com o oracle _11gpdf
Alta disponibilidade com o oracle _11gpdf
 
Certificações Java
Certificações JavaCertificações Java
Certificações Java
 
Gerenciamento do oracle 11g r2)
Gerenciamento do oracle 11g r2)Gerenciamento do oracle 11g r2)
Gerenciamento do oracle 11g r2)
 
2672853-apostila-completa-de-Java
2672853-apostila-completa-de-Java2672853-apostila-completa-de-Java
2672853-apostila-completa-de-Java
 
Implementando Testes Unitários em Java - Manoel Pimentel
Implementando Testes Unitários em Java - Manoel PimentelImplementando Testes Unitários em Java - Manoel Pimentel
Implementando Testes Unitários em Java - Manoel Pimentel
 
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
Desenvolvendo aplicações em Java para o Google Android - Ranieri de Souza Fer...
 
plsql oracle
plsql oracleplsql oracle
plsql oracle
 

Semelhante a Java No Mundo Real

Curso Android - Dia 1 - Apresentação java
Curso Android - Dia 1 - Apresentação javaCurso Android - Dia 1 - Apresentação java
Curso Android - Dia 1 - Apresentação javaAlex Braz
 
Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Aécio Costa
 
JavaFX - Uma visão Geral
JavaFX - Uma visão GeralJavaFX - Uma visão Geral
JavaFX - Uma visão GeralEder Nogueira
 
Tutorial: Desenvolvimento de aplicacoes moveis com Java
Tutorial: Desenvolvimento de aplicacoes moveis com JavaTutorial: Desenvolvimento de aplicacoes moveis com Java
Tutorial: Desenvolvimento de aplicacoes moveis com JavaPaulo César M Jeveaux
 
Guia para o Profissional Java
Guia para o Profissional JavaGuia para o Profissional Java
Guia para o Profissional Javaarmeniocardoso
 
Mobile - Uma introdução sobre sistemas para dispositivos móveis.
Mobile - Uma introdução sobre sistemas para dispositivos móveis.Mobile - Uma introdução sobre sistemas para dispositivos móveis.
Mobile - Uma introdução sobre sistemas para dispositivos móveis.Júlia Fernandes Alves
 
Jugday - Java Básico
Jugday - Java BásicoJugday - Java Básico
Jugday - Java BásicoPaloma Costa
 
Introdução ao desenvolvimento de aplicativos com PhoneGap e Sencha Touch
Introdução ao desenvolvimento de aplicativos com PhoneGap e Sencha TouchIntrodução ao desenvolvimento de aplicativos com PhoneGap e Sencha Touch
Introdução ao desenvolvimento de aplicativos com PhoneGap e Sencha TouchLeonardo Soares
 
Java: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalhoJava: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalhoPedro Cavalero
 
Mobile Apps Cross-Platform
Mobile Apps Cross-PlatformMobile Apps Cross-Platform
Mobile Apps Cross-PlatformAdriel Café
 
Netbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 PortuguesNetbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 PortuguesRodrigo Peleias
 
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisApresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisÉdipo Souza
 
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...Leonardo Melo Santos
 
Mobile Marketing e o jQuery Mobile
Mobile Marketing e o jQuery MobileMobile Marketing e o jQuery Mobile
Mobile Marketing e o jQuery MobileJefferson Souza
 
Capacitacao java aula-01-01-conceitos
Capacitacao java aula-01-01-conceitosCapacitacao java aula-01-01-conceitos
Capacitacao java aula-01-01-conceitosEliete Regina Souza
 
Apostila Java
Apostila JavaApostila Java
Apostila Javadeilton
 

Semelhante a Java No Mundo Real (20)

Curso Android - Dia 1 - Apresentação java
Curso Android - Dia 1 - Apresentação javaCurso Android - Dia 1 - Apresentação java
Curso Android - Dia 1 - Apresentação java
 
Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!
 
JavaFX - Uma visão Geral
JavaFX - Uma visão GeralJavaFX - Uma visão Geral
JavaFX - Uma visão Geral
 
Tutorial: Desenvolvimento de aplicacoes moveis com Java
Tutorial: Desenvolvimento de aplicacoes moveis com JavaTutorial: Desenvolvimento de aplicacoes moveis com Java
Tutorial: Desenvolvimento de aplicacoes moveis com Java
 
Introdução intel XDK
Introdução intel XDKIntrodução intel XDK
Introdução intel XDK
 
Guia para o Profissional Java
Guia para o Profissional JavaGuia para o Profissional Java
Guia para o Profissional Java
 
Java e Software Livre
Java e Software LivreJava e Software Livre
Java e Software Livre
 
Mc1 JAVA
Mc1 JAVAMc1 JAVA
Mc1 JAVA
 
Mobile - Uma introdução sobre sistemas para dispositivos móveis.
Mobile - Uma introdução sobre sistemas para dispositivos móveis.Mobile - Uma introdução sobre sistemas para dispositivos móveis.
Mobile - Uma introdução sobre sistemas para dispositivos móveis.
 
Jugday - Java Básico
Jugday - Java BásicoJugday - Java Básico
Jugday - Java Básico
 
Introdução ao desenvolvimento de aplicativos com PhoneGap e Sencha Touch
Introdução ao desenvolvimento de aplicativos com PhoneGap e Sencha TouchIntrodução ao desenvolvimento de aplicativos com PhoneGap e Sencha Touch
Introdução ao desenvolvimento de aplicativos com PhoneGap e Sencha Touch
 
Java: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalhoJava: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalho
 
Mobile Apps Cross-Platform
Mobile Apps Cross-PlatformMobile Apps Cross-Platform
Mobile Apps Cross-Platform
 
Netbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 PortuguesNetbeans Slides Fy2009 Portugues
Netbeans Slides Fy2009 Portugues
 
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisApresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
 
A vez do mobile - Dev in Bahia #3
A vez do mobile - Dev in Bahia #3A vez do mobile - Dev in Bahia #3
A vez do mobile - Dev in Bahia #3
 
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
Sencha Touch, RhoMobile, AppMobi e jQuery Mobile um comparativo entre platafo...
 
Mobile Marketing e o jQuery Mobile
Mobile Marketing e o jQuery MobileMobile Marketing e o jQuery Mobile
Mobile Marketing e o jQuery Mobile
 
Capacitacao java aula-01-01-conceitos
Capacitacao java aula-01-01-conceitosCapacitacao java aula-01-01-conceitos
Capacitacao java aula-01-01-conceitos
 
Apostila Java
Apostila JavaApostila Java
Apostila Java
 

Mais de Saulo Arruda

MVP: conheça os 2 significados ao criar o seu #cpbr8
MVP: conheça os 2 significados ao criar o seu #cpbr8MVP: conheça os 2 significados ao criar o seu #cpbr8
MVP: conheça os 2 significados ao criar o seu #cpbr8Saulo Arruda
 
Oportunidade para desenvolvedores na era das startups
Oportunidade para desenvolvedores na era das startupsOportunidade para desenvolvedores na era das startups
Oportunidade para desenvolvedores na era das startupsSaulo Arruda
 
Growth Hacking Mobile - BRAPPS 2014
Growth Hacking Mobile - BRAPPS 2014Growth Hacking Mobile - BRAPPS 2014
Growth Hacking Mobile - BRAPPS 2014Saulo Arruda
 
Growth hacking - Jera Retrospectiva
Growth hacking  - Jera RetrospectivaGrowth hacking  - Jera Retrospectiva
Growth hacking - Jera RetrospectivaSaulo Arruda
 
#CPBR7 - Métricas para startups
#CPBR7 - Métricas para startups#CPBR7 - Métricas para startups
#CPBR7 - Métricas para startupsSaulo Arruda
 
StartupFarm métricas
StartupFarm métricasStartupFarm métricas
StartupFarm métricasSaulo Arruda
 
Mande seu chefe pentear macaco
Mande seu chefe pentear macacoMande seu chefe pentear macaco
Mande seu chefe pentear macacoSaulo Arruda
 
Sthart - Desenvolvimento Web e Mobile
Sthart - Desenvolvimento Web e MobileSthart - Desenvolvimento Web e Mobile
Sthart - Desenvolvimento Web e MobileSaulo Arruda
 
Como ganhar dinheiro com aplicativos mobile?
Como ganhar dinheiro com aplicativos mobile?Como ganhar dinheiro com aplicativos mobile?
Como ganhar dinheiro com aplicativos mobile?Saulo Arruda
 
Startups - É programando que se empreende
Startups - É programando que se empreendeStartups - É programando que se empreende
Startups - É programando que se empreendeSaulo Arruda
 
Desenvolvimento iOS - Aula 6
Desenvolvimento iOS - Aula 6Desenvolvimento iOS - Aula 6
Desenvolvimento iOS - Aula 6Saulo Arruda
 
Desenvolvimento iOS - Aula 5
Desenvolvimento iOS - Aula 5Desenvolvimento iOS - Aula 5
Desenvolvimento iOS - Aula 5Saulo Arruda
 
Desenvolvimento iOS - Aula 4
Desenvolvimento iOS - Aula 4Desenvolvimento iOS - Aula 4
Desenvolvimento iOS - Aula 4Saulo Arruda
 
TDC 2012 - Querem me comprar, e agora?
TDC 2012 - Querem me comprar, e agora?TDC 2012 - Querem me comprar, e agora?
TDC 2012 - Querem me comprar, e agora?Saulo Arruda
 
Desenvolvimento iOS - Aula 3
Desenvolvimento iOS - Aula 3Desenvolvimento iOS - Aula 3
Desenvolvimento iOS - Aula 3Saulo Arruda
 
Desenvolvimento iOS - Aula 2
Desenvolvimento iOS - Aula 2Desenvolvimento iOS - Aula 2
Desenvolvimento iOS - Aula 2Saulo Arruda
 
Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1Saulo Arruda
 
Empreendedorismo Agil
Empreendedorismo AgilEmpreendedorismo Agil
Empreendedorismo AgilSaulo Arruda
 

Mais de Saulo Arruda (20)

MVP: conheça os 2 significados ao criar o seu #cpbr8
MVP: conheça os 2 significados ao criar o seu #cpbr8MVP: conheça os 2 significados ao criar o seu #cpbr8
MVP: conheça os 2 significados ao criar o seu #cpbr8
 
Oportunidade para desenvolvedores na era das startups
Oportunidade para desenvolvedores na era das startupsOportunidade para desenvolvedores na era das startups
Oportunidade para desenvolvedores na era das startups
 
Growth Hacking Mobile - BRAPPS 2014
Growth Hacking Mobile - BRAPPS 2014Growth Hacking Mobile - BRAPPS 2014
Growth Hacking Mobile - BRAPPS 2014
 
Growth hacking - Jera Retrospectiva
Growth hacking  - Jera RetrospectivaGrowth hacking  - Jera Retrospectiva
Growth hacking - Jera Retrospectiva
 
#CPBR7 - Métricas para startups
#CPBR7 - Métricas para startups#CPBR7 - Métricas para startups
#CPBR7 - Métricas para startups
 
StartupFarm métricas
StartupFarm métricasStartupFarm métricas
StartupFarm métricas
 
Mande seu chefe pentear macaco
Mande seu chefe pentear macacoMande seu chefe pentear macaco
Mande seu chefe pentear macaco
 
Sthart - Desenvolvimento Web e Mobile
Sthart - Desenvolvimento Web e MobileSthart - Desenvolvimento Web e Mobile
Sthart - Desenvolvimento Web e Mobile
 
Como ganhar dinheiro com aplicativos mobile?
Como ganhar dinheiro com aplicativos mobile?Como ganhar dinheiro com aplicativos mobile?
Como ganhar dinheiro com aplicativos mobile?
 
Startups - É programando que se empreende
Startups - É programando que se empreendeStartups - É programando que se empreende
Startups - É programando que se empreende
 
SCRUM - Aula 2
SCRUM - Aula 2SCRUM - Aula 2
SCRUM - Aula 2
 
SCRUM - Aula1
SCRUM - Aula1SCRUM - Aula1
SCRUM - Aula1
 
Desenvolvimento iOS - Aula 6
Desenvolvimento iOS - Aula 6Desenvolvimento iOS - Aula 6
Desenvolvimento iOS - Aula 6
 
Desenvolvimento iOS - Aula 5
Desenvolvimento iOS - Aula 5Desenvolvimento iOS - Aula 5
Desenvolvimento iOS - Aula 5
 
Desenvolvimento iOS - Aula 4
Desenvolvimento iOS - Aula 4Desenvolvimento iOS - Aula 4
Desenvolvimento iOS - Aula 4
 
TDC 2012 - Querem me comprar, e agora?
TDC 2012 - Querem me comprar, e agora?TDC 2012 - Querem me comprar, e agora?
TDC 2012 - Querem me comprar, e agora?
 
Desenvolvimento iOS - Aula 3
Desenvolvimento iOS - Aula 3Desenvolvimento iOS - Aula 3
Desenvolvimento iOS - Aula 3
 
Desenvolvimento iOS - Aula 2
Desenvolvimento iOS - Aula 2Desenvolvimento iOS - Aula 2
Desenvolvimento iOS - Aula 2
 
Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1
 
Empreendedorismo Agil
Empreendedorismo AgilEmpreendedorismo Agil
Empreendedorismo Agil
 

Java No Mundo Real

  • 1. JAVA NO MUNDO REAL Saulo Arruda
  • 2. Apresentação Saulo Arruda <sauloarruda@gmail.com> Especialista em Melhoria do Processo de Software pela UFLA Diretor de TI da Agence Consultoria Diretor Pedagógico da Agence Educacional Coordenador do JUG-MS 10 anos de experiência em projetos de software
  • 3. Agenda Ecossistema Java Mercado JSE Mercado JEE Mercado JME Conclusões
  • 4. Ecossistema Java Java é uma linguagem de programação orientada a objetos; A tecnologia Java é utiliza em todos os principais segmentos da indústria, presente em uma ampla gama de dispositivos; A Plataforma Java é composta pela Java Virtual Machine (JVM) e pela Java Application Programming Interface (API); Java Certification, Java Comunity Process (JCP), Java User Group (JUG), java.net
  • 5.
  • 6.
  • 7. Onde Java é usado? A tecnologia Java está presente em mais de 4,5 bilhões de dispositivos, incluindo: Mais de 800 milhões de PCs; 2,1 bilhões de telefones celulares e outros dispositivos portáteis; 3,5 bilhões de cartões inteligentes; Além de set-top boxes, impressoras, webcams, jogos, sistemas de navegação para automóveis, terminais lotéricos, dispositivos médicos, guichês de pagamento de estacionamento etc.
  • 8.
  • 9. Porque os desenvolvedores preferem Java? Criar um software em uma plataforma e executá-lo em praticamente qualquer outra; Criar programas para execução em navegadores e serviços da Web; Desenvolver aplicativos no lado do servidor usados tanto em fóruns, lojas e pesquisas on-line, como no processamento de formulários HTML, e muito mais; Combinar aplicativos ou serviços usando a linguagem Java para criar aplicativos ou serviços altamente personalizados; Criar aplicativos potentes e eficazes para telefones celulares, processadores remotos, produtos de consumo de baixo custo e praticamente qualquer outro dispositivo com tecnologia digital;
  • 14. Edições do Java Java está disponível em três edições:
  • 15. Edições do Java Java está disponível em três edições: JSE (Java Standard Edition): aplicações desktop/standalone;
  • 16. Edições do Java Java está disponível em três edições: JSE (Java Standard Edition): aplicações desktop/standalone; JME (Java Micro Edition): aplicações para dispositivos móveis;
  • 17. Edições do Java Java está disponível em três edições: JSE (Java Standard Edition): aplicações desktop/standalone; JME (Java Micro Edition): aplicações para dispositivos móveis; JEE (Java Enterprise Edition): aplicações web coorporativas;
  • 18. Agenda Ecossistema Java Mercado JSE Mercado JEE Mercado JME Conclusões
  • 19.
  • 20. Mercado JSE Aplicações Desktop Standalone; Faz amplo uso da API Java; Adoção na maioria das Universidades; Atualmente na versão JRE 1.6;
  • 21. Principais Recursos Swing: Toolkit para desenvolvimento de interfaces gráficas independentes de sistema operacional. JDBC: Conectividade com banco de dados independente de fornecedor e sistema operacional. JavaWeb Start: Instalação, execução e atualização de aplicações pela Web. JavaFX: Tookit para interface gráficas ricas para web, desktop e mobile;
  • 22. Principais Recursos Linguagens Dinâmicas: Possibilidade de uso de outras linguagens como, por exemplo: Groovy Scala JRuby , Rhino (JavaScript), Quercus (PHP), Jython e muitas outras...
  • 23. Frameworks Spring Framework: várias ferramentas para desenvolvimento de aplicações OO, como IoC e DI, além de milhares de utilitários; JUnit: Framework para testes unitários; Hibernate: framework para persistência de objetos; Ant e Maven: ferramentas para build de projetos; Velocity e Freemarker: ferramentas para uso de templates;
  • 24. Aplicações Jude: Ferramenta para modelagem UML; CrashPlan: Ferramenta de Backup; Eclipse, Netbeans, IntelliJ IDEA: IDEs para desenvolvimento em Java e outras linguagens; Programa do IRPF: Solução para declaração do Imposto de Renda do Governo Federal.
  • 26. Oportunidades Amplo uso da tecnologia tanto no meio acadêmico quanto no mercado;
  • 27. Oportunidades Amplo uso da tecnologia tanto no meio acadêmico quanto no mercado; Novas opções como linguagens dinâmicas e JavaFX proporcionam um novo mercado;
  • 28. Oportunidades Amplo uso da tecnologia tanto no meio acadêmico quanto no mercado; Novas opções como linguagens dinâmicas e JavaFX proporcionam um novo mercado; Maior comunidade do mundo a sua disposição: JUG-MS, GUJ, JavaFree, etc...
  • 29. Oportunidades Amplo uso da tecnologia tanto no meio acadêmico quanto no mercado; Novas opções como linguagens dinâmicas e JavaFX proporcionam um novo mercado; Maior comunidade do mundo a sua disposição: JUG-MS, GUJ, JavaFree, etc... Hoje Java é a primeira linguagem que todo programador aprende, isto é, mais gente disponível no mercado.
  • 30. Oportunidades Amplo uso da tecnologia tanto no meio acadêmico quanto no mercado; Novas opções como linguagens dinâmicas e JavaFX proporcionam um novo mercado; Maior comunidade do mundo a sua disposição: JUG-MS, GUJ, JavaFree, etc... Hoje Java é a primeira linguagem que todo programador aprende, isto é, mais gente disponível no mercado. Performance não é mais um problema!
  • 32. Ameaças Nos últimos anos, a evolução da plataforma Java está muito mais lenta;
  • 33. Ameaças Nos últimos anos, a evolução da plataforma Java está muito mais lenta; Várias empresas com problemas usando Java estão buscando alternativas: .NET, Ruby On Rails, PHP, Python;
  • 34. Ameaças Nos últimos anos, a evolução da plataforma Java está muito mais lenta; Várias empresas com problemas usando Java estão buscando alternativas: .NET, Ruby On Rails, PHP, Python;
  • 35. Ameaças Nos últimos anos, a evolução da plataforma Java está muito mais lenta; Várias empresas com problemas usando Java estão buscando alternativas: .NET, Ruby On Rails, PHP, Python; Na edição JSE o céu está mais azul...
  • 36. Agenda Ecossistema Java Mercado JSE Mercado JEE Mercado JME Conclusões
  • 37.
  • 38. Mercado JEE Aplicações Web coorporativas; Envolve grandes projetos ou pequenas aplicações; Uso de diversas tecnologias dentro da plataforma Java para desenvolvimento de aplicações distribuídas; Atualmente na versão JEE 1.5
  • 39. Principais Recursos Aplicações Web: Sistemas que provêem páginas dinâmicas para Web; JavaServer Faces (JSF): Framework para desenvolvimento de páginas web; Java Persistence API (JPA): Framework para persistência; Java Transaction API: Serviço de transação distribuída; Webservices: Tecnologias para implementação de Webservices;
  • 40. Principais Recursos Enterprise Java Beans (EJB): Serviços distribuídos de regras de negócio; Session Bean: Objeto que é instanciado e usado remotamente. Message-Driven Bean: Objeto que processa mensagens de forma assíncrona.
  • 41. Frameworks RichFaces, ICEFaces, MyFaces: Componentes para JSF; SpringMVC, Struts2, VRaptor, JBoss Seam: Alternativas ao JavaServer Faces como framework Web; JBoss Rules/Drools: Framework para implementação de regras; JBoss JBPM: Implementação de Workflow; Open EJB: EJB fora de um servidor de aplicação;
  • 42. Servidores de Aplicação JBoss AS IBM Websphere SUN Glassfish Oracle/BEA Weblogic Apache Geronimo
  • 43. Aplicações IRPF: Agora falando de toda a solução; E-SAJ do TJMS: Vários serviços on-line usando JEE; SAP: Maior ERP do mundo; Websites: Claro, TIM, TAM, Casas Bahia, Banco do Brasil, ...
  • 45. Oportunidades O Governo e as Empresas adotam Java!
  • 46. Oportunidades O Governo e as Empresas adotam Java! Bons desenvolvedores JEE tem ALTA empregabilidade;
  • 47. Oportunidades O Governo e as Empresas adotam Java! Bons desenvolvedores JEE tem ALTA empregabilidade; Programadores JEE tem maiores salários;
  • 49. Ameaças Grandes dificuldades com implantação de Sistemas JEE;
  • 50. Ameaças Grandes dificuldades com implantação de Sistemas JEE; Empresas abandonando a plataforma Java, especialmente JEE;
  • 51. Ameaças Grandes dificuldades com implantação de Sistemas JEE; Empresas abandonando a plataforma Java, especialmente JEE; Curva de aprendizado MUITO alta para um bom desenvolvedor;
  • 52. Agenda Ecossistema Java Mercado JSE Mercado JEE Mercado JME Conclusões
  • 53.
  • 54. Mercado JME Desenvolvimento para dispositivos Móveis Usado em celulares, cartões com chip, TV digital, Blueray, carros, impressoras, robôs, etc. Uso da linguagem Java para desenvolvimento para praticamente qualquer tipo de dispositivo limitado.
  • 55. Principais Recursos Boa API de programação incluindo: Bluetooth, Gráficos 3D, Webservices, Multimídia, Internacionalização, Gateway de Pagamentos, SMS, etc. Integração com Java FX; Extensões proprietárias de fabricantes;
  • 56. Frameworks Floggy: Persistência de objetos; LWUIT: Tookit para interface gráfica; Google Maps API: Acesso a mapas; Polish: Diversas ferramentas para desenvolvimento JME: UI Toolkit, Persistência, Comunicação Client/Server, Banco de Dados e Portabilidade;
  • 57. Aplicações Gmail: Acesso ao e-mail do google Opera Mini: Navegador Web; Jogos EA Mobile: diversos jogos em Java ME; Skype Lite, eBuddy: ligações VOIP e instant messenger
  • 59. Oportunidades Hoje a maioria dos telefones celular do mercado rodam JME;
  • 60. Oportunidades Hoje a maioria dos telefones celular do mercado rodam JME; Escassez de profissionais especialistas na tecnologia;
  • 61. Oportunidades Hoje a maioria dos telefones celular do mercado rodam JME; Escassez de profissionais especialistas na tecnologia; Android roda JME!
  • 63. Ameaças iTunes Store (iPhone) cresceu rapidamente e abocanhou uma grande fatia do mercado! Falta um ambiente similar para JME;
  • 64. Ameaças iTunes Store (iPhone) cresceu rapidamente e abocanhou uma grande fatia do mercado! Falta um ambiente similar para JME; Ainda existem muitas limitações para aplicações JME;
  • 65. Ameaças iTunes Store (iPhone) cresceu rapidamente e abocanhou uma grande fatia do mercado! Falta um ambiente similar para JME; Ainda existem muitas limitações para aplicações JME; Dificuldades de portabilidade entre inúmeros aparelhos;
  • 66. Agenda Ecossistema Java Mercado JSE Mercado JEE Mercado JME Conclusões
  • 68.
  • 70.
  • 71. O quanto ao futuro?
  • 72.
  • 74. Não é necessário muita força para fazer as coisas, mas é preciso uma enorme força para decidir o que fazer. Elbert Hubbard
  • 75. Obrigado! Saulo Arruda <sauloarruda@gmail.com> Meu Blog (www.sauloarruda.eti.br) Agence (www.agence.com.br) JUG-MS (www.jugms.com.br)
  • 76. Licença Você pode: copiar, distribuir, exibir e executar a obra criar obras derivadas Sob as seguintes condições: Atribuição. Você deve dar crédito ao autor original, da forma especificada pelo autor ou licenciante.
  • 77. Referências Saiba mais sobre a tecnologia Java (http://www.java.com/pt_BR/about/) About the Java Technology (http://java.sun.com/docs/books/tutorial/ getStarted/intro/definition.html) JavaEE Technologies (http://java.sun.com/javaee/technologies/) The JavaEE 5 Tutorial (http://java.sun.com/javaee/5/docs/tutorial/doc/) Java EE Compatibility (http://java.sun.com/javaee/overview/compatibility.jsp) JME - The Most Ubiquitous Application Plataform for Mobile Devices (http:// java.sun.com/javame/index.jsp)

Notas do Editor

  1. Desenvolvedores Java tem melhores sal&amp;#xE1;rios em m&amp;#xE9;dia Maiores chances de aprendizado devido a Java exigir mais!
  2. Leia, leia, leia, aplique Leia, leia, leia, aplique Leia, leia, leia, aplique Leia, leia, leia, aplique