Oracle Keynote from JMagghreb 2014
-
Upload
simon-ritter -
Category
Software
-
view
213 -
download
1
description
Transcript of Oracle Keynote from JMagghreb 2014
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java:*Create*The*Future*SImon&Ri)er&Head&of&Java&Technology&Evangelism&Oracle&Corp.&&Twi)er:&@speakjava&
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Safe*Harbor*Statement*
The*following*is*intended*to*outline*our*general*product*direcIon.*It*is*intended*for*informaIon*purposes*only,*and*may*not*be*incorporated*into*any*contract.*It*is*not*a*commitment*to*deliver*any*material,*code,*or*funcIonality,*and*should*not*be*relied*upon*in*making*purchasing*decisions.*The*development,*release,*and*Iming*of*any*features*or*funcIonality*described*for*Oracle’s*products*remains*at*the*sole*discreIon*of*Oracle.*
2*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
CREATE*THE*FUTURE*
Java&OpenJDK&
MOOC&
Clou
d&
Java&SE&
Performance&
Security&JCP&Java&Duchess& Ja
va&EE&
Internet&of&Things&
OTN&
Java&Embedded&
Java.net&Lambd
a&
Jigsaw&
Tooling&
Java&Magazine&Community&
CollaboraMon&
Java&User&G
roup
s&
AdoptQaQJSR&
Java&Cha
mpion
s&
Java&Card&
Java&M
E&
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Awareness*• 2*days/65*sessions*• Over*800*aSendees*• Organized*by**
22*JUGS*
Learning*• Java*8*&*Lambdas*• Driving*adopIon*in*the*
community*• Launching*soon!**
Standards*• Morocco*JUG*joins*JCP*• AcIve*member*of**
JSR*364*• ParIcipaIng*in**
Adopt^a^JSR*
The*parIcipaIon*conInues*
4*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.*** 5*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
The*outreach*conInues*Java 8
Roadshow • ParMcipaMon&by&over&5,200&JUG&members&• Over&140,000+&onQdemand&views&&20+&Countries&
Java Evangelism Outreach
• 25+&interacMve&hands&on&labs&worldwide&• ParMcipaMng&in&over&1&conference&per&week&75+&Events&
NightHacking Tour
• 7,000&developer&parMcipants&• Over&150,000+&&onQdemand&views&40+&Visits&
New MOOC
Course
• Over&2,400®istered&students&• New&Java&8&MOOC&coming&in&2015&80+&LocaMons&
06/11/2014* 6*
Virtual Java Developer
Days • ParMcipaMon&by&over&3,000&viewers&• New&Java&8&Developer&Days&coming&in&2015&3&ConMnents&
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
The*community*growth*conInues*
7*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
The*progress*conInues*
Technology*Java&SE&• JDK*8*launched*(April*2014)*• Regular*JDK*9*drops*occurring*
Java&Embedded&• Java*ME*8*released*• Growth*in*Java*ports*for*SoCs*
Java&EE&• Over*15*compaIble*applicaIon*servers*• JSR*366*approved**
*
Oracle&Stewardship*Java&Evangelism&• Developing*more*MOOCs*• Increasing*student*outreach*
Oracle&Technology&Network&• 1M+*newsleSer*subscribers*• 250K+**Java*Magazine*subscribers*
Java.net&• Over*870,000+*members*and*growing*• Releasing*new/robust*plaeorm*(2015)**
*
Community*OpenJDK&• Java*SE*8*RI*released*• Java*SE*9*RI*project*created*
JCP&• JCP.next*progress*conInues*• 2*major*plaeorm*releases*in*last*year*
Java&User&Groups&• Increased*from*228*to*314*in*one*year*• 3*regional*summits*completed**
*
8*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java*SE*8*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.*** 10*
Java*8*buzz*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java*8*publicaIons*
11*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.*** 12*
JEP*104*^*AnnotaIons*on*Java*Types*
Michael(Ernst(
JEP*175*–*PowerPC/AIX*Port*
Volker(Simonis(
JEP*171*^*Fence*Intrinsics*
JEP*155*^*Concurrency*Updates*
Doug(Lea(
JEP*150*^*Date*&*Time*API*
Stephen(Colebourne*
OpenJDK*Vital&community&of&strong&contributors&
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
JDK*8*InnovaMon&• Lambda*aka*Closures*• Language*Interop*• Nashorn*
Core&Libraries&• Parallel*operaIons*for*core**
collecIons*APIs*
• Improvements*in*funcIonality*• Improved*type*inference*
General&Goodness&• JVM*enhancements*• No*PermGen*limitaIons*• Performance*improvements*
Java&for&Everyone&• Profiles*for*constrained*devices*• JSR*310^Date*&*Time*APIs*
• Non^Gregorian*calendars*• Unicode*6.1*• ResourceBundle**• BCP47*locale*matching*• GlobalizaIon*&*Accessibility*
Tools&• Compiler*control*&*logging*• JSR*308^AnnotaIons*on*Java*Type*• NaIve*app*bundling**• App*Store*Bundling*tools**
Client&• Deployment*enhancements*• JavaFX*8*• Public*UI*Control*API*• Java*SE*Embedded*support*• Enhanced*HTML5*support*• 3D*shapes*and*aSributes*• PrinIng*
Security&• Limited*doPrivilege*• NSA*Suite*B*algorithm*support*• SNI*Server*Side*support*• DSA*updated*to*FIPS186^3*• AEAD*JSSE*CipherSuites*
Enterprise&• Mission*Control*• Flight*Recorder*• Usage*Tracker*• Advanced*Management*Console*• MSI*Enterprise*JRE*Installer*
13*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Lambda*Modernizing&Java&
" Big*step*forward*in*modernizing*the*Java$Language$
" Big*step*forward*in*modernizing*the*Java$Libraries$
" Biggest*upgrade$ever&to*the*Java*programming*model*
14*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Streams*Modernizing&Java&
" A*new*key*Java$Library&abstracIon(
" Convenient(way*to*aggregate*operaIons*on*sequences(
" Easy*way*to*introduce$Parallelism$to*your*applicaIons*
" Compa8ble*with*your*exisIng*code*because*of*default*methods*
15*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java*8*is*FAST*–*Leading*benchmarks*across*ecosystem*
16*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Performance*improvements*
" Fork/Join*improvements*
" Faster*atomics,*concurrent*libraries*
" Faster*opImizaIons*
17*
collecMon.parallelStream()&.filter(Objects::nonNull)&.forEach(item&Q>&{&
//benefit&from&Fork/Join&});&
65000&
85000&
105000&
125000&
JDK&7u17& JDK&7u40& JDK&8&
MaxQjO
PS&
SPECjbb2013&Improvement&
40%&
Oracle*JDK*7u17*–*Oracle*SPARC*T5^2*–*75658*SPECjbb2013^MulIJVM*Max^jOPS,*23334*SPECjbb2013^MulIJVM*CriIcal^jOPS*Oracle*JDK*7u40*–*Oracle*SPARC*T5^2*–*81084*SPECjbb2013^MulIJVM*Max^jOPS,*39129*SPECjbb2013^MulIJVM*CriIcal^jOPS*Oracle*JDK*8*–*Oracle*SPARC*T5^2*–*114492*SPECjbb2013^MulIJVM*Max^jOPS,*43963*SPECjbb2013^MulIJVM*CriIcal^jOPS*Source:*www.spec.org*as*of*March*10*th*2014*SPEC*and*the*benchmark*name*SPECjbb*are*registered*trademarks*of*Standard*Performance*EvaluaIon*CorporaIon*(SPEC)*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
JDK*8*security*updates*
Protocols and Standards • SNI server-side support • DSA updated to FIPS186-3 • AEAD JSSE CipherSuites • TLS 1.2 as default • TLS SNI extension • Implement SHA-224 in
FIPS 180-3 • 64-bit PKCS11 for Windows • Overhaul JKS-JCEKS-PKCS12
KeyStores • MS-SFU Kerberos 5
extensions • Restrict Use Certs with
RSA keys < 1024 bits
Application Developers • JDEPS tools • High entropy random
number generation • NSA Suite B algorithm
support • Stronger algorithm
support to password based encryption
• Blacklist performance enhancements
• DNS rebinding and SocketPermission Improvements
• Type annotations
Plug-in and Web Start • Security slider • Disable via
Java Control Panel • Expiration date • Code signing for
sandboxed apps • Exception site list • Standardized revocation
SysAdmins • Deployment Rulesets • Exception site list • Locked Jars
18*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java*in*the*enterprise*
19*
Java&SE&Advanced&
Mission&Control&" Diagnose*complex*issues*
" Low*overhead*Flight$Recorder$" Back^in^Ime*analysis*
" Plugins*for*many*systems*
Advanced&Management&Console&" Track*and*manage*clients*at*scale*
" Usage*tracking*and*Deployment**Rule*Sets*
Support&&&Updates&" Support*of*complex*issues*&*changes*
" Updates*to*old*versions*like*JDK*6*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java*SE*roadmap*
JDK&8&• Lambda*• JSR*310:*New*Date*and*Time*API*• Nashorn:*JavaScript*Interoperability*
• JavaFX*Enhancements*
8u40&• Performance*Improvements*• Density*and*Resource*Management*
• MulI^Language*Support*Improvements*• Accessibility*Enhancements*• ConInued*Java*SE*Advanced*Features*
JDK&9&• Modularity*–*Jigsaw*• HTTP*2.0*• Lightweight*JSON*• Cloud*opImized*JVM*• ConInued*Java*SE*Advanced*Features*• Ahead*of*Time*CompilaIon*
8u20&• G1*Performance*Improvement*• JVM*Performance*Improvements*• Java*Mission*Control*5.4*
• Advanced*Management*Console*1.0*• MSI*Enterprise*JRE*Installer*
8u60&• Bug*Fixes*• ConInued*Java*SE*Advanced*Features*
2016 2014 2015 2017
20*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
ConInue*to*parIcipate*
" Use*Java*SE*8*" Test*drive*Java*SE*9*Early*Access*builds**
21*
Download&JDK&9&Early&Access&release&today!&jdk9.java.net&
*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java*ME*8*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java SE 7
Last*Year*
APIs& Language&
Java&SE&7&
CDC&1.1&
CDC 1.1 (based on SE 1.4.2)
CLDC 1.1 (based on SE 1.3)
CLDC&1.1&
23*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java&SE&8&Java&SE&8&
Java&ME&8&
This*Year*
Java&ME&8&
APIs& Language&
24*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.*** 25*
Java*Embedded*adopIon*
2400+&RegistraMons&83*Countries*Java*Embedded*MOOC*
Industry&Wide&CollaboraMon&Embedded*SoCs,*OEMs/ODMs,*Semiconductors*
Raspberry&Pi&
~500,000&Downloads*
&Q&&&&&50,000&&&100,000&&&150,000&&&200,000&&&250,000&&&300,000&&&350,000&&&400,000&&&450,000&&&500,000&&
20+&Planorm&Ports&PowerPC,*Intel*x86,*MIPS*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Oracle&Mobile&ApplicaMon&Framework& RoboVM&&&JavaFXPorts&
26*
Java&Card&& Java&for&Trusted&ExecuMon&Environments&
Mobile*innovaIon*with*Java*
• Cross*plaeorm*mobile**applicaIon*development*
• Simple*Extensible*UI*• Java*for*Business*Logic*
• 3B*Java*Card*deployed*/*yr*• SIM*cards*and*embedded*secure*elements**
• Securing*NFC*payment*
• NaIve*iOS*apps*in*Java*• JavaFX*apps*on*Android*• Leverage*Java*language*and*tools*• Open*Source*project*
• Security*Services*within*smartphone*processors*
• Extends*Java*Card*plaeorm*• Mobile*enterprise,*mobile*banking,*and*IOT*security*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java*Embedded*roadmap*
2016
Java&SE&Embedded&8&(Mar&2014)&&• Complete*JVM*convergence*• New*Compact*Profiles*• Significantly*smaller*base*runIme*
• Embedded*JRE*customizaIon*tool*• Support*for*ARM,*Power*PC*&*x86*• Java*Flight*Recorder/Mission*Control*• Simple*migraIon*of*ME*CDC*headless*applicaIons*
Java&SE&Embedded&8u6&(Q3&2014)&• More*footprint*reducIons*• Performance*improvements*• G1*support*on*JDK*for*ARM*(experimental)*
• Headful*(AWT/Swing)*support*on**ARM*v5*Sop*Float*
Java&SE&Embedded&8uX&• ARM*v8*64^bit*support*• Improved*monitoring*&*serviceability*• ApplicaIon*performance*improvements*
Java&ME&Embedded&8&(Apr&2014)&• Java*ME*CLDC*8*&*ME*Embedded*Profile*8*• �LiSle*sibling�*of*Java*SE*8*• New*&*enhanced*embedded*features*
• Scalable,*portable*architecture*• Qualcomm*6270T*and*Raspberry*Pi*
Java&ME&SDK&8&• New*developer*tooling*&*enhancements*
Java ME Embedded 8.1 (Q4 2014) • Footprint optimizations • Improved tooling support • Additional ports on commercial
embedded platforms
Java ME Embedded 8.2 • Simplified integration with
enterprise services • Tooling improvements
Java SE Embedded 9 Java ME Embedded 9 • Increased alignment between
Java ME and Java SE • Modularity based on Jigsaw • Developer productivity
improvements • Improved cloud deployment support
2014 2015
27*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
ConInue*to*parIcipate*
" Play*with*Java*Embedded*products*" Test*drive*on*popular*embedded*development*boards*
" Contact*the*Java*Embedded*Team*about*support*on*your*target*embedded*plaeorms**
28*
Download&Java&Embedded&today!&oracle.com/java&
*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java*EE*7*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
The*vibrant*Java*EE*community*
CompaMble&ApplicaMon&Servers& User&Groups&
Java&EE&Developers& Career&Opportunity&PublicaMons&
30*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.*** 31*
Vital&community&of&strong&contributors&Java*EE(
JCP*contribuIons**
Weld*(CDI),*Bean*ValidaIon*
Community*contribuIons**
Adopt^a^JSR:*WebSockets*
Individual*contribuIons**
MulIple*expert*groups,*Airhacks*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.*** 32*
Java*EE*7*
HTML5-Ready • JSON • WebSockets • JAX-RS
Industry Standard • Lowers risk • Vendor choice • Implementation choice • Operating system choice • Portable applications
Scalable • Multi-threaded • Asynchronous APIs
(Servlet, EJB, JAX-RS) • Concurrency utilities
for Java EE
Productivity • Annotated POJOs • Less boilerplate code • Integrated • Excellent tool ecosystem
Meets Enterprise Demands • Java Message Service • Batch processing • Distributed transactions
Community Driven • Java Community Process • Adopt-a-JSR • Open Source RI
(GlassFish)
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.*** 33*
GlassFish*Server*Open*Source*EdiIon*4.1*
Updated&Planorm&Support&• *Java*8*• *CDI*1.2*• *WebSocket*1.1*
Jersey&(JAXQRS)&• *New*diagnosIcs*API**• *SSE*client*reconnect*
Tyrus&(WebSocket)&• *Session*limits*• *Proxy*support **• *Client*reconnect*
Stability&and&Quality&• *Feature*enhancements*• *1000+*bugs*fixes*
And&More&…&• *Updated*Java*EE*7*SDK*• *JMS*over*WebSockets*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java*EE*8*Community*Survey*
hSps://java.net/downloads/javaee^spec/JavaEE8_Community_Survey_Results.pdf*
hSps://blogs.oracle.com/ldemichiel/entry/results_from_the_java_ee*
JSON^B*
Security*SimplificaIon*
JCache*
Security*Interceptors*
MVC*
Pruning*EJB*Timer*Logging*
Cloud*
SSE*
Embedded*
Mgt*Monitoring*API*Config*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Current*Status*
Already&There&! Java*EE*8*(JSR*366)*! CDI*2*(JSR*365)*! JSON^B*(JSR*367)*! JMS*2.1*(JSR*368)*
! Servlet*4*(JSR*369)*! JAX^RS*2.1*(JSR*370)*! MVC*(JSR*371)*
! JSF*2.3*(JSR*372)*
Coming&Soon&! Security*! Management*and*Monitoring*
! JCache*1.1*! JSON^P*1.1**
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java*EE*roadmap*
Java&EE&7&• HTML*5:*WebSockets,*JSON*Processing,*REST,*Servlet*NIO*
• ProducIvity:*More*annotated*POJOs,*less*boilerplate*code,*cohesive*plaeorm*
• Meet*Enterprise*Demands:*Batch,*Concurrency*
Java&EE&8&JSR&366&Begins&• Approved*unanimously*• HTML5*and*web*enhancements*
• Ease*of*development*and*CDI*alignment*• Running*in*the*cloud*
*
GlassFish&5&• Java*EE*8*RI*• Java*EE*8*SDK*
Java&EE&8&Community&Survey&• Three*part*survey*• PrioriIzed*features*• 4500+*responses*• Shared*results*
Java&EE&8&GA&• JSON*Binding,*JAX^RS*2.1*• JMS*2.1,*Servlet*4.0*• Model^View^Controller*1.0,*JSF*2.3*
• Java*EE*Security*1.0,*Java*EE*Management*2.0,*JSON^P*1.1*
2015 2013 2014 2017
36*
2016
Java&EE&8&• EarlyDraps*
Java&EE&8&• Final*Draps*
Java&EE&8&• PublicDraps*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Adopt^A^JSR*
• Grass*roots*parIcipaIon*to*shape*Java*EE*• Launched*in*Java*EE*7*Ime^frame,*key*community*element*for*Java*EE*8*
– 19*JUGs*adopted*a*Java*EE*7*JSR*
37*
http://glassfish.org/adoptajsr
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
Java*EE*8*JSRs*Already*Adopted!*User&Group& Java&EE&
8.0&CDI&2.0&
JSONQB&1.0& JMS&2.1& Servlet&4.0& JAXQRS&2.1& MVC&1.0&
JSF&2.3&
London*Java*Community*
Morocco*JUG*Egypt*JUG*
Hellenic*Java*User*Group*
Santa*Catarina*Java*User*Group*
Japan*User*Group*
Copyright*©*2014,*Oracle*and/or*its*affiliates.*All*rights*reserved.***
CREATE*THE*FUTURE*
Java&