SlideShare a Scribd company logo
1 of 22
Download to read offline
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
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

JavaScript and AJAX
JavaScript and AJAXJavaScript and AJAX
JavaScript and AJAXFrane Bandov
 
Spark手把手:[e2-spk-s01]
Spark手把手:[e2-spk-s01]Spark手把手:[e2-spk-s01]
Spark手把手:[e2-spk-s01]Erhwen Kuo
 
[HITB Malaysia 2011] Exploit Automation
[HITB Malaysia 2011] Exploit Automation[HITB Malaysia 2011] Exploit Automation
[HITB Malaysia 2011] Exploit AutomationMoabi.com
 
Understanding Source Code Differences by Separating Refactoring Effects
Understanding Source Code Differences by Separating Refactoring EffectsUnderstanding Source Code Differences by Separating Refactoring Effects
Understanding Source Code Differences by Separating Refactoring EffectsShinpei Hayashi
 
[Kiwicon 2011] Post Memory Corruption Memory Analysis
[Kiwicon 2011] Post Memory Corruption Memory Analysis[Kiwicon 2011] Post Memory Corruption Memory Analysis
[Kiwicon 2011] Post Memory Corruption Memory AnalysisMoabi.com
 
Spark手把手:[e2-spk-s02]
Spark手把手:[e2-spk-s02]Spark手把手:[e2-spk-s02]
Spark手把手:[e2-spk-s02]Erhwen Kuo
 
Spark手把手:[e2-spk-s03]
Spark手把手:[e2-spk-s03]Spark手把手:[e2-spk-s03]
Spark手把手:[e2-spk-s03]Erhwen Kuo
 
exploit-writing-tutorial-part-5-how-debugger-modules-plugins-can-speed-up-bas...
exploit-writing-tutorial-part-5-how-debugger-modules-plugins-can-speed-up-bas...exploit-writing-tutorial-part-5-how-debugger-modules-plugins-can-speed-up-bas...
exploit-writing-tutorial-part-5-how-debugger-modules-plugins-can-speed-up-bas...tutorialsruby
 
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...Puppet
 
Building a maintainable Reactiflux application
Building a maintainable Reactiflux applicationBuilding a maintainable Reactiflux application
Building a maintainable Reactiflux applicationjrw-fi
 
Android2.x/3.x/4.x向けアプリ開発で気付いたこと
Android2.x/3.x/4.x向けアプリ開発で気付いたことAndroid2.x/3.x/4.x向けアプリ開発で気付いたこと
Android2.x/3.x/4.x向けアプリ開発で気付いたことKenichi Kambara
 
Ecossistema Ruby - versão SCTI UNF 2013
Ecossistema Ruby - versão SCTI UNF 2013Ecossistema Ruby - versão SCTI UNF 2013
Ecossistema Ruby - versão SCTI UNF 2013Fabio Akita
 

What's hot (15)

NodeJS "Web en tiempo real"
NodeJS "Web en tiempo real"NodeJS "Web en tiempo real"
NodeJS "Web en tiempo real"
 
JavaScript and AJAX
JavaScript and AJAXJavaScript and AJAX
JavaScript and AJAX
 
Spark手把手:[e2-spk-s01]
Spark手把手:[e2-spk-s01]Spark手把手:[e2-spk-s01]
Spark手把手:[e2-spk-s01]
 
[HITB Malaysia 2011] Exploit Automation
[HITB Malaysia 2011] Exploit Automation[HITB Malaysia 2011] Exploit Automation
[HITB Malaysia 2011] Exploit Automation
 
Understanding Source Code Differences by Separating Refactoring Effects
Understanding Source Code Differences by Separating Refactoring EffectsUnderstanding Source Code Differences by Separating Refactoring Effects
Understanding Source Code Differences by Separating Refactoring Effects
 
[Kiwicon 2011] Post Memory Corruption Memory Analysis
[Kiwicon 2011] Post Memory Corruption Memory Analysis[Kiwicon 2011] Post Memory Corruption Memory Analysis
[Kiwicon 2011] Post Memory Corruption Memory Analysis
 
Spark手把手:[e2-spk-s02]
Spark手把手:[e2-spk-s02]Spark手把手:[e2-spk-s02]
Spark手把手:[e2-spk-s02]
 
Spark手把手:[e2-spk-s03]
Spark手把手:[e2-spk-s03]Spark手把手:[e2-spk-s03]
Spark手把手:[e2-spk-s03]
 
exploit-writing-tutorial-part-5-how-debugger-modules-plugins-can-speed-up-bas...
exploit-writing-tutorial-part-5-how-debugger-modules-plugins-can-speed-up-bas...exploit-writing-tutorial-part-5-how-debugger-modules-plugins-can-speed-up-bas...
exploit-writing-tutorial-part-5-how-debugger-modules-plugins-can-speed-up-bas...
 
Expression Language 3.0
Expression Language 3.0Expression Language 3.0
Expression Language 3.0
 
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
PuppetConf 2016: Deconfiguration Management: Making Puppet Clean Up Its Own M...
 
Building a maintainable Reactiflux application
Building a maintainable Reactiflux applicationBuilding a maintainable Reactiflux application
Building a maintainable Reactiflux application
 
Android2.x/3.x/4.x向けアプリ開発で気付いたこと
Android2.x/3.x/4.x向けアプリ開発で気付いたことAndroid2.x/3.x/4.x向けアプリ開発で気付いたこと
Android2.x/3.x/4.x向けアプリ開発で気付いたこと
 
Ecossistema Ruby - versão SCTI UNF 2013
Ecossistema Ruby - versão SCTI UNF 2013Ecossistema Ruby - versão SCTI UNF 2013
Ecossistema Ruby - versão SCTI UNF 2013
 
Threejs使ってみた
Threejs使ってみたThreejs使ってみた
Threejs使ってみた
 

Viewers also liked

Viewers also liked (8)

Android - visão geral
Android - visão geralAndroid - visão geral
Android - visão geral
 
Pixelart
PixelartPixelart
Pixelart
 
An Introduction to NV_path_rendering
An Introduction to NV_path_renderingAn Introduction to NV_path_rendering
An Introduction to NV_path_rendering
 
SVG como exemplo de XML
SVG como exemplo de XMLSVG como exemplo de XML
SVG como exemplo de XML
 
Gráficos Vetoriais na Web com SVG
Gráficos Vetoriais na Web com SVGGráficos Vetoriais na Web com SVG
Gráficos Vetoriais na Web com SVG
 
JavaFX Primeiros Passos
JavaFX Primeiros PassosJavaFX Primeiros Passos
JavaFX Primeiros Passos
 
SIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
SIGGRAPH 2012: GPU-Accelerated 2D and Web RenderingSIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
SIGGRAPH 2012: GPU-Accelerated 2D and Web Rendering
 
CS 354 Vector Graphics & Path Rendering
CS 354 Vector Graphics & Path RenderingCS 354 Vector Graphics & Path Rendering
CS 354 Vector Graphics & Path Rendering
 

Similar to Tomorrow Java

Back to the future with Java 7 (Geekout June/2011)
Back to the future with Java 7 (Geekout June/2011)Back to the future with Java 7 (Geekout June/2011)
Back to the future with Java 7 (Geekout June/2011)Martijn Verburg
 
Java 7 Whats New(), Whats Next() from Oredev
Java 7 Whats New(), Whats Next() from OredevJava 7 Whats New(), Whats Next() from Oredev
Java 7 Whats New(), Whats Next() from OredevMattias Karlsson
 
The mighty js_function
The mighty js_functionThe mighty js_function
The mighty js_functiontimotheeg
 
55 new things in Java 7 - Devoxx France
55 new things in Java 7 - Devoxx France55 new things in Java 7 - Devoxx France
55 new things in Java 7 - Devoxx FranceDavid Delabassee
 
Construire une application JavaFX 8 avec gradle
Construire une application JavaFX 8 avec gradleConstruire une application JavaFX 8 avec gradle
Construire une application JavaFX 8 avec gradleThierry Wasylczenko
 
The Power of the JVM: Applied Polyglot Projects with Java and JavaScript
The Power of the JVM: Applied Polyglot Projects with Java and JavaScriptThe Power of the JVM: Applied Polyglot Projects with Java and JavaScript
The Power of the JVM: Applied Polyglot Projects with Java and JavaScriptHazelcast
 
Fields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxFields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxJoão Esperancinha
 
The Mayans Lost Guide to RxJava on Android
The Mayans Lost Guide to RxJava on AndroidThe Mayans Lost Guide to RxJava on Android
The Mayans Lost Guide to RxJava on AndroidFernando Cejas
 
OpenWebBeans and DeltaSpike at ApacheCon
OpenWebBeans and DeltaSpike at ApacheConOpenWebBeans and DeltaSpike at ApacheCon
OpenWebBeans and DeltaSpike at ApacheConos890
 
How Does Kubernetes Build OpenAPI Specifications?
How Does Kubernetes Build OpenAPI Specifications?How Does Kubernetes Build OpenAPI Specifications?
How Does Kubernetes Build OpenAPI Specifications?reallavalamp
 
DevNexus 2020: Discover Modern Java
DevNexus 2020: Discover Modern JavaDevNexus 2020: Discover Modern Java
DevNexus 2020: Discover Modern JavaHenri Tremblay
 
S314168 - What's New in Enterprise Java Bean Technology @ JavaOne Brazil 2010
S314168 - What's New in Enterprise Java Bean Technology @ JavaOne Brazil 2010S314168 - What's New in Enterprise Java Bean Technology @ JavaOne Brazil 2010
S314168 - What's New in Enterprise Java Bean Technology @ JavaOne Brazil 2010Arun Gupta
 
Inside the JVM - Follow the white rabbit!
Inside the JVM - Follow the white rabbit!Inside the JVM - Follow the white rabbit!
Inside the JVM - Follow the white rabbit!Sylvain Wallez
 
Do we need Unsafe in Java?
Do we need Unsafe in Java?Do we need Unsafe in Java?
Do we need Unsafe in Java?Andrei Pangin
 

Similar to Tomorrow Java (20)

Back to the future with Java 7 (Geekout June/2011)
Back to the future with Java 7 (Geekout June/2011)Back to the future with Java 7 (Geekout June/2011)
Back to the future with Java 7 (Geekout June/2011)
 
Java 7 Whats New(), Whats Next() from Oredev
Java 7 Whats New(), Whats Next() from OredevJava 7 Whats New(), Whats Next() from Oredev
Java 7 Whats New(), Whats Next() from Oredev
 
The mighty js_function
The mighty js_functionThe mighty js_function
The mighty js_function
 
55 new things in Java 7 - Devoxx France
55 new things in Java 7 - Devoxx France55 new things in Java 7 - Devoxx France
55 new things in Java 7 - Devoxx France
 
Construire une application JavaFX 8 avec gradle
Construire une application JavaFX 8 avec gradleConstruire une application JavaFX 8 avec gradle
Construire une application JavaFX 8 avec gradle
 
What`s new in Java 7
What`s new in Java 7What`s new in Java 7
What`s new in Java 7
 
The Power of the JVM: Applied Polyglot Projects with Java and JavaScript
The Power of the JVM: Applied Polyglot Projects with Java and JavaScriptThe Power of the JVM: Applied Polyglot Projects with Java and JavaScript
The Power of the JVM: Applied Polyglot Projects with Java and JavaScript
 
Fields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptxFields in Java and Kotlin and what to expect.pptx
Fields in Java and Kotlin and what to expect.pptx
 
Nantes Jug - Java 7
Nantes Jug - Java 7Nantes Jug - Java 7
Nantes Jug - Java 7
 
The Mayans Lost Guide to RxJava on Android
The Mayans Lost Guide to RxJava on AndroidThe Mayans Lost Guide to RxJava on Android
The Mayans Lost Guide to RxJava on Android
 
OpenWebBeans and DeltaSpike at ApacheCon
OpenWebBeans and DeltaSpike at ApacheConOpenWebBeans and DeltaSpike at ApacheCon
OpenWebBeans and DeltaSpike at ApacheCon
 
Json generation
Json generationJson generation
Json generation
 
Spock
SpockSpock
Spock
 
Java 7: Quo vadis?
Java 7: Quo vadis?Java 7: Quo vadis?
Java 7: Quo vadis?
 
How Does Kubernetes Build OpenAPI Specifications?
How Does Kubernetes Build OpenAPI Specifications?How Does Kubernetes Build OpenAPI Specifications?
How Does Kubernetes Build OpenAPI Specifications?
 
DevNexus 2020: Discover Modern Java
DevNexus 2020: Discover Modern JavaDevNexus 2020: Discover Modern Java
DevNexus 2020: Discover Modern Java
 
S314168 - What's New in Enterprise Java Bean Technology @ JavaOne Brazil 2010
S314168 - What's New in Enterprise Java Bean Technology @ JavaOne Brazil 2010S314168 - What's New in Enterprise Java Bean Technology @ JavaOne Brazil 2010
S314168 - What's New in Enterprise Java Bean Technology @ JavaOne Brazil 2010
 
React on es6+
React on es6+React on es6+
React on es6+
 
Inside the JVM - Follow the white rabbit!
Inside the JVM - Follow the white rabbit!Inside the JVM - Follow the white rabbit!
Inside the JVM - Follow the white rabbit!
 
Do we need Unsafe in Java?
Do we need Unsafe in Java?Do we need Unsafe in Java?
Do we need Unsafe in Java?
 

More from José Maria Silveira Neto (16)

Desenvolvimento de Aplicações
Desenvolvimento de AplicaçõesDesenvolvimento de Aplicações
Desenvolvimento de Aplicações
 
Apresentando o CEJUG e o poder do Java
Apresentando o CEJUG e o poder do JavaApresentando o CEJUG e o poder do Java
Apresentando o CEJUG e o poder do Java
 
Let's talk about Certifications
Let's talk about CertificationsLet's talk about Certifications
Let's talk about Certifications
 
JavaFX Overview
JavaFX OverviewJavaFX Overview
JavaFX Overview
 
NetBeans: a IDE que você precisa
NetBeans: a IDE que você precisaNetBeans: a IDE que você precisa
NetBeans: a IDE que você precisa
 
OpenSolaris a Céu Aberto
OpenSolaris a Céu AbertoOpenSolaris a Céu Aberto
OpenSolaris a Céu Aberto
 
JavaFX introduction
JavaFX introductionJavaFX introduction
JavaFX introduction
 
Database Technologies for Semantic Web
Database Technologies for Semantic WebDatabase Technologies for Semantic Web
Database Technologies for Semantic Web
 
High-Performance Computing and OpenSolaris
High-Performance Computing and OpenSolarisHigh-Performance Computing and OpenSolaris
High-Performance Computing and OpenSolaris
 
Questões de Certificação SCJP
Questões de Certificação SCJPQuestões de Certificação SCJP
Questões de Certificação SCJP
 
Microformatos em 10 minutos
Microformatos em 10 minutosMicroformatos em 10 minutos
Microformatos em 10 minutos
 
Participation Era, Sun and You
Participation Era, Sun and YouParticipation Era, Sun and You
Participation Era, Sun and You
 
Let's talk about certification: SCJA
Let's talk about certification: SCJALet's talk about certification: SCJA
Let's talk about certification: SCJA
 
Uma Olhada no Netbeans 6
Uma Olhada no Netbeans 6Uma Olhada no Netbeans 6
Uma Olhada no Netbeans 6
 
Real World Technologies
Real World TechnologiesReal World Technologies
Real World Technologies
 
Novidades no Netbeans 6
Novidades no Netbeans 6Novidades no Netbeans 6
Novidades no Netbeans 6
 

Recently uploaded

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 

Recently uploaded (20)

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 

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