SlideShare a Scribd company logo
Tomorrow Java
novidades, tendências e espectativas




                     Rafael Carneiro e Silveira Neto
agenda

         ●   java 7
         ●   java EE 6
         ●   cadeia alimentar
         ●   javaFX
fork/join framework

class Fibo extends RecursiveTask<Integer>{
    final int n;
    public Fibo(int n){this.n=n;}
    protected Integer compute(){
        if(n<=1) return n;
        Fibo f1 = new Fibo(n-1); f1.fork();
        Fibo f2 = new Fibo(n-2);
        return f2.compute() + f1.join();
    }
}
uso

public class Main {
    public static void Main(String args[]){
        ForkJoinPool pool = new ForkJoinPool(3);
        Fibo fibonacci = new Fibo(20);
        pool.execute(fibonacci);
        System.out.println(fibonacci.join());
    }
}
exception handling


try {
    /// ...
} catch (Exception1 e1, Exception2 e2) {
    // ...
} catch (Exception3 e3) {
    // ...
}
case switch


String s = ...
switch(s){
    case “dog”: ...
    break;
    case “cat”:    ...
    break;
    default: ...
    break;
}
type inference


Antes:
Map<String, Integer> map = new HashMap<String,
  Integer>();


Agora:
Map<String, Integer> map = new HashMap<>();
outras novidades


●   Modularização
●   Nova coleta de lixo (G1).
●   Ponteiros de 64 bits comprimidos.
●   InvokeDynamic
mas não


●   Closures
●   Generics refinados
●   Sobrecarga de operador
●   Sintaxe BigDecimal
●   Suporte a XML a nível de linguagem
Java EE 6


●   Contexts and Dependency Injection for Java
    (Web Beans 1.0)
●   Java Servlet 3.0
●   JavaServer Faces 2.0
●   Enterprise JavaBeans 3.1
●   Java Persistence 2.0
@Stateless @Entity @WebServlet(urlPatterns = "/monster")
   @Table(name = "MONSTERTABLE")
   @NamedQueries({@NamedQuery(name = "MonsterEJB...
   @PersistenceContext(name = "monster..."
   public class MonsterServlet extends
     HttpServlel{ @Id @GeneratedValue
      (strategy = ... private int monsterId;
   @Max(2) @NotNull private String name;
   @Transient @EJB MonsterServlet monsterEJB;




Por Ludovic Champenois, http://weblogs.java.net/blog/ludo/archive/2009/05/worst_ever_java.html
cadeia alimentar




     VMWare           Oracle



Sun Microsystems
                   Spring Source
VMWare compra SpringSource
Tomorrow Java
Oracle compra Sun Microsystems
JavaFX
Prós
Contras
Imagens
●   Jeff Kubina, “Coffe Beans”
     –   http://www.flickr.com/photos/kubina/1469914113/
●   Jeff Kubina, “Coffe Bean”
     –   http://www.flickr.com/photos/kubina/1470771024/
●   Marcelo Alves, “Coffee”
     –   http://www.flickr.com/photos/xfer/4124684
●   Sjdunphy, “The Roscommon Spaghetti Incident”
     –   http://www.flickr.com/photos/sjdunphy/531657318/
●   Joh Hason, “fish soup”
     –   http://www.flickr.com/photos/jonhanson/56968305/
●   Skalas2 “axis n allies world in war”
     –   http://www.flickr.com/photos/skalasinc/356616846/
●   Alexkerhead, “Cameras and Misc in the Case”
     –   http://www.flickr.com/photos/alexkerhead/3088082405/
mais
●   Edans, “La escalera del Hotel Velázquez”
     –   http://www.flickr.com/photos/edans/499371992/
●   E's “coffee break”
     –   http://www.flickr.com/photos/e-ta-i/6148059/
●   AnantaB “2008, New Year Fireworks”
     –   http://www.flickr.com/photos/anantablamichhane/2152606721/
●   Clearly Ambiguous, “Fireworks”
     –   http://www.flickr.com/photos/clearlyambiguous/183629188/
●   Vidalia_11, “Texture - cracked paint”
     –   http://www.flickr.com/photos/56832361@N00/2476826198/
●   BigTallGuy, “Fun @ 10mm”
     –   http://www.flickr.com/photos/bigtallguy/2492489993/
algumas referências
●   JDK7 Features
     –   http://openjdk.java.net/projects/jdk7/features/
●   Deep Dive: JDK 7 With Danny Coward
     –   http://java.sun.com/developer/media/deepdivejdk7.jsp
●   SpringSource: Chapter Two
     –   http://blog.springsource.com/2009/08/10/springsource-chapter-two/
●   New features of java7SE presentation
     –   http://www.slideshare.net/dogangoko/new-features-of-java7-se-presentation
●   What's Expected in Java 7
     –   http://www.slideshare.net/gal.marder/whats-expected-in-java-7-1116123
valeu!




slides em http://silveiraneto.net

More Related Content

What's hot (15)

PDF
NodeJS "Web en tiempo real"
Sebastián Gamboa
 
PDF
JavaScript and AJAX
Frane Bandov
 
PDF
Spark手把手:[e2-spk-s01]
Erhwen Kuo
 
PDF
[HITB Malaysia 2011] Exploit Automation
Moabi.com
 
PDF
Understanding Source Code Differences by Separating Refactoring Effects
Institute of Science Tokyo
 
PDF
[Kiwicon 2011] Post Memory Corruption Memory Analysis
Moabi.com
 
PDF
Spark手把手:[e2-spk-s02]
Erhwen Kuo
 
PDF
Spark手把手:[e2-spk-s03]
Erhwen Kuo
 
PDF
exploit-writing-tutorial-part-5-how-debugger-modules-plugins-can-speed-up-bas...
tutorialsruby
 
PPTX
Expression Language 3.0
Everton Tavares
 
PDF
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
Puppet
 
PDF
Building a maintainable Reactiflux application
jrw-fi
 
PDF
Android2.x/3.x/4.x向けアプリ開発で気付いたこと
Kenichi Kambara
 
PDF
Ecossistema Ruby - versão SCTI UNF 2013
Fabio Akita
 
ODP
Threejs使ってみた
Takesxi Sximada
 
NodeJS "Web en tiempo real"
Sebastián Gamboa
 
JavaScript and AJAX
Frane Bandov
 
Spark手把手:[e2-spk-s01]
Erhwen Kuo
 
[HITB Malaysia 2011] Exploit Automation
Moabi.com
 
Understanding Source Code Differences by Separating Refactoring Effects
Institute of Science Tokyo
 
[Kiwicon 2011] Post Memory Corruption Memory Analysis
Moabi.com
 
Spark手把手:[e2-spk-s02]
Erhwen Kuo
 
Spark手把手:[e2-spk-s03]
Erhwen Kuo
 
exploit-writing-tutorial-part-5-how-debugger-modules-plugins-can-speed-up-bas...
tutorialsruby
 
Expression Language 3.0
Everton Tavares
 
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
Puppet
 
Building a maintainable Reactiflux application
jrw-fi
 
Android2.x/3.x/4.x向けアプリ開発で気付いたこと
Kenichi Kambara
 
Ecossistema Ruby - versão SCTI UNF 2013
Fabio Akita
 
Threejs使ってみた
Takesxi Sximada
 

Viewers also liked (8)

ODP
Android - visão geral
José Maria Silveira Neto
 
PPT
An Introduction to NV_path_rendering
Mark Kilgard
 
ODP
SVG como exemplo de XML
José Maria Silveira Neto
 
PDF
Gráficos Vetoriais na Web com SVG
Helder da Rocha
 
ODP
JavaFX Primeiros Passos
José Maria Silveira Neto
 
PPT
SIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
Mark Kilgard
 
PPT
CS 354 Vector Graphics & Path Rendering
Mark Kilgard
 
Android - visão geral
José Maria Silveira Neto
 
An Introduction to NV_path_rendering
Mark Kilgard
 
SVG como exemplo de XML
José Maria Silveira Neto
 
Gráficos Vetoriais na Web com SVG
Helder da Rocha
 
JavaFX Primeiros Passos
José Maria Silveira Neto
 
SIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
Mark Kilgard
 
CS 354 Vector Graphics & Path Rendering
Mark Kilgard
 
Ad

Similar to Tomorrow Java (20)

PPTX
JavaOne 2011 Recap
Jim Bethancourt
 
PDF
Powering the Next Generation Services with Java Platform - Spark IT 2010
Arun Gupta
 
PDF
De Java 8 ate Java 14
Víctor Leonel Orozco López
 
PDF
New Features of Java7 SE
dogangoko
 
PDF
Whats New In Java Ee 6
Stephan Janssen
 
PDF
Java EE 6 workshop at Dallas Tech Fest 2011
Arun Gupta
 
PDF
Jakarta EE Recipes
Josh Juneau
 
PDF
Java Persistence 2.0
Eduardo Pelegri-Llopart
 
PDF
Java EE 7 Soup to Nuts at JavaOne 2014
Arun Gupta
 
PDF
The State of Java under Oracle at JCertif 2011
Arun Gupta
 
PDF
JUG Berlin Brandenburg: What's new in Java EE 7?
gedoplan
 
PDF
Beginning java ee_7
Rodrigo Hiemer
 
PPTX
Java7 Features
Jitender Jain
 
PDF
Java EE 6 Aquarium Paris
Alexis Moussine-Pouchkine
 
PDF
Understanding
Arun Gupta
 
PDF
Using the latest Java Persistence API 2.0 features
Arun Gupta
 
PDF
Andrei Niculae - JavaEE6 - 24mai2011
Agora Group
 
PDF
Rapid Application Development with Cocoon
tcurdt
 
PDF
Java EE 6 & GlassFish = Less Code + More Power at CEJUG
Arun Gupta
 
PDF
S313557 java ee_programming_model_explained_dochez
Jerome Dochez
 
JavaOne 2011 Recap
Jim Bethancourt
 
Powering the Next Generation Services with Java Platform - Spark IT 2010
Arun Gupta
 
De Java 8 ate Java 14
Víctor Leonel Orozco López
 
New Features of Java7 SE
dogangoko
 
Whats New In Java Ee 6
Stephan Janssen
 
Java EE 6 workshop at Dallas Tech Fest 2011
Arun Gupta
 
Jakarta EE Recipes
Josh Juneau
 
Java Persistence 2.0
Eduardo Pelegri-Llopart
 
Java EE 7 Soup to Nuts at JavaOne 2014
Arun Gupta
 
The State of Java under Oracle at JCertif 2011
Arun Gupta
 
JUG Berlin Brandenburg: What's new in Java EE 7?
gedoplan
 
Beginning java ee_7
Rodrigo Hiemer
 
Java7 Features
Jitender Jain
 
Java EE 6 Aquarium Paris
Alexis Moussine-Pouchkine
 
Understanding
Arun Gupta
 
Using the latest Java Persistence API 2.0 features
Arun Gupta
 
Andrei Niculae - JavaEE6 - 24mai2011
Agora Group
 
Rapid Application Development with Cocoon
tcurdt
 
Java EE 6 & GlassFish = Less Code + More Power at CEJUG
Arun Gupta
 
S313557 java ee_programming_model_explained_dochez
Jerome Dochez
 
Ad

More from José Maria Silveira Neto (16)

ODP
Desenvolvimento de Aplicações
José Maria Silveira Neto
 
PDF
Apresentando o CEJUG e o poder do Java
José Maria Silveira Neto
 
ODP
Let's talk about Certifications
José Maria Silveira Neto
 
PDF
JavaFX Overview
José Maria Silveira Neto
 
ODP
NetBeans: a IDE que você precisa
José Maria Silveira Neto
 
ODP
OpenSolaris a Céu Aberto
José Maria Silveira Neto
 
ODP
JavaFX introduction
José Maria Silveira Neto
 
PDF
Database Technologies for Semantic Web
José Maria Silveira Neto
 
ODP
High-Performance Computing and OpenSolaris
José Maria Silveira Neto
 
PPT
Questões de Certificação SCJP
José Maria Silveira Neto
 
PDF
Microformatos em 10 minutos
José Maria Silveira Neto
 
PDF
Participation Era, Sun and You
José Maria Silveira Neto
 
ODP
Let's talk about certification: SCJA
José Maria Silveira Neto
 
PDF
Uma Olhada no Netbeans 6
José Maria Silveira Neto
 
PDF
Real World Technologies
José Maria Silveira Neto
 
PDF
Novidades no Netbeans 6
José Maria Silveira Neto
 
Desenvolvimento de Aplicações
José Maria Silveira Neto
 
Apresentando o CEJUG e o poder do Java
José Maria Silveira Neto
 
Let's talk about Certifications
José Maria Silveira Neto
 
JavaFX Overview
José Maria Silveira Neto
 
NetBeans: a IDE que você precisa
José Maria Silveira Neto
 
OpenSolaris a Céu Aberto
José Maria Silveira Neto
 
JavaFX introduction
José Maria Silveira Neto
 
Database Technologies for Semantic Web
José Maria Silveira Neto
 
High-Performance Computing and OpenSolaris
José Maria Silveira Neto
 
Questões de Certificação SCJP
José Maria Silveira Neto
 
Microformatos em 10 minutos
José Maria Silveira Neto
 
Participation Era, Sun and You
José Maria Silveira Neto
 
Let's talk about certification: SCJA
José Maria Silveira Neto
 
Uma Olhada no Netbeans 6
José Maria Silveira Neto
 
Real World Technologies
José Maria Silveira Neto
 
Novidades no Netbeans 6
José Maria Silveira Neto
 

Recently uploaded (20)

PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PDF
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
July Patch Tuesday
Ivanti
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
July Patch Tuesday
Ivanti
 

Tomorrow Java

  • 1. Tomorrow Java novidades, tendências e espectativas Rafael Carneiro e Silveira Neto
  • 2. agenda ● java 7 ● java EE 6 ● cadeia alimentar ● javaFX
  • 3. fork/join framework class Fibo extends RecursiveTask<Integer>{ final int n; public Fibo(int n){this.n=n;} protected Integer compute(){ if(n<=1) return n; Fibo f1 = new Fibo(n-1); f1.fork(); Fibo f2 = new Fibo(n-2); return f2.compute() + f1.join(); } }
  • 4. uso public class Main { public static void Main(String args[]){ ForkJoinPool pool = new ForkJoinPool(3); Fibo fibonacci = new Fibo(20); pool.execute(fibonacci); System.out.println(fibonacci.join()); } }
  • 5. exception handling try { /// ... } catch (Exception1 e1, Exception2 e2) { // ... } catch (Exception3 e3) { // ... }
  • 6. case switch String s = ... switch(s){ case “dog”: ... break; case “cat”: ... break; default: ... break; }
  • 7. type inference Antes: Map<String, Integer> map = new HashMap<String, Integer>(); Agora: Map<String, Integer> map = new HashMap<>();
  • 8. outras novidades ● Modularização ● Nova coleta de lixo (G1). ● Ponteiros de 64 bits comprimidos. ● InvokeDynamic
  • 9. mas não ● Closures ● Generics refinados ● Sobrecarga de operador ● Sintaxe BigDecimal ● Suporte a XML a nível de linguagem
  • 10. Java EE 6 ● Contexts and Dependency Injection for Java (Web Beans 1.0) ● Java Servlet 3.0 ● JavaServer Faces 2.0 ● Enterprise JavaBeans 3.1 ● Java Persistence 2.0
  • 11. @Stateless @Entity @WebServlet(urlPatterns = "/monster") @Table(name = "MONSTERTABLE") @NamedQueries({@NamedQuery(name = "MonsterEJB... @PersistenceContext(name = "monster..." public class MonsterServlet extends HttpServlel{ @Id @GeneratedValue (strategy = ... private int monsterId; @Max(2) @NotNull private String name; @Transient @EJB MonsterServlet monsterEJB; Por Ludovic Champenois, http://weblogs.java.net/blog/ludo/archive/2009/05/worst_ever_java.html
  • 12. cadeia alimentar VMWare Oracle Sun Microsystems Spring Source
  • 15. Oracle compra Sun Microsystems
  • 17. Prós
  • 19. Imagens ● Jeff Kubina, “Coffe Beans” – http://www.flickr.com/photos/kubina/1469914113/ ● Jeff Kubina, “Coffe Bean” – http://www.flickr.com/photos/kubina/1470771024/ ● Marcelo Alves, “Coffee” – http://www.flickr.com/photos/xfer/4124684 ● Sjdunphy, “The Roscommon Spaghetti Incident” – http://www.flickr.com/photos/sjdunphy/531657318/ ● Joh Hason, “fish soup” – http://www.flickr.com/photos/jonhanson/56968305/ ● Skalas2 “axis n allies world in war” – http://www.flickr.com/photos/skalasinc/356616846/ ● Alexkerhead, “Cameras and Misc in the Case” – http://www.flickr.com/photos/alexkerhead/3088082405/
  • 20. mais ● Edans, “La escalera del Hotel Velázquez” – http://www.flickr.com/photos/edans/499371992/ ● E's “coffee break” – http://www.flickr.com/photos/e-ta-i/6148059/ ● AnantaB “2008, New Year Fireworks” – http://www.flickr.com/photos/anantablamichhane/2152606721/ ● Clearly Ambiguous, “Fireworks” – http://www.flickr.com/photos/clearlyambiguous/183629188/ ● Vidalia_11, “Texture - cracked paint” – http://www.flickr.com/photos/56832361@N00/2476826198/ ● BigTallGuy, “Fun @ 10mm” – http://www.flickr.com/photos/bigtallguy/2492489993/
  • 21. algumas referências ● JDK7 Features – http://openjdk.java.net/projects/jdk7/features/ ● Deep Dive: JDK 7 With Danny Coward – http://java.sun.com/developer/media/deepdivejdk7.jsp ● SpringSource: Chapter Two – http://blog.springsource.com/2009/08/10/springsource-chapter-two/ ● New features of java7SE presentation – http://www.slideshare.net/dogangoko/new-features-of-java7-se-presentation ● What's Expected in Java 7 – http://www.slideshare.net/gal.marder/whats-expected-in-java-7-1116123