Copyright © 2014, Oracle and/or its affiliates. All rights reserved.1
Introducing Java 8
Alexandre Vieira
Middleware Solutions Manager
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.2
Create the Future with Java 8
• REVOLUTIONIZE
APPLICATION
DEVELOPMENT
• HARMONIZE
ENTERPRISE IT
• EMPOWER THE
INTERNET OF
THINGS (IOT) www.oracle.com/java8
3
Java SE 8
• Nearly four years in the making
• Biggest upgrade to Java programming model ever!
• Small set of features, with a big impact
• Lambda Expressions
• Default Methods
• Bulk Operations on Collections
• Coordinated co-evolution of language, libraries, and
VM
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.4
Java 8 for the Java Developer Community
• Productivity & Performance
• Project Lambda makes it easier to distribute processing of collections over multiple threads (better application
performance and simpler code).
• Productivity features enable developers to write more readable and shorter code with improved collections and
annotations.
• Modularity – Java SE Compact Profiles & Java ME as a subset of the Java SE platform
• Profiles for Java SE large, medium and small footprint enables more efficient deployments
• Embedded application development made easier for Java developers – Java ME updated with VM, Java Language, and
Libraries, and features to be aligned with Java SE 8 while retaining the focus on small embedded devices.
• Java developers are uniquely positioned to drive innovation for Mobile, Social, IoT & Cloud
• Open, standards-based, community-driven platform, spanning from small devices to cloud-based development,
combined with Java developers’ talent will make IoT a reality
• Java developers have incredible opportunity can transfer their skills and knowledge to develop robust and highly
performant applications from edge devices through to the enterprise.
• Java is a community technology
• JCP is important, it's growing, it's working - JDK 8 and Java ME 8 were developed with community participation
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.5
Java 8 for the Enterprise and IoT
• Java 8 enables significant productivity and performance enhancements
• Java SE 8 contains numerous new features and enhancements that deliver application performance benefits and simpler
parallel programming models
• JDK 8 enables developers to be more productive with simpler and more readable code
• Java 8 is the platform of choice for the Internet of Things, Mobile, Social & Cloud – all of
your services can be implemented in Java from the edge device to the data center.
• Harness the opportunity to use your existing and readily available developer talent to implement your IoT strategy.
• Reduce costs while driving innovation and improving services (Reduce Complexity, Drive Innovation, Create Opportunity)
• Java is the path to platform standardization for embedded environments.
• Support any device, any size, any market – Java fills the void of no standards for embedded device application
development.
• Java SE and Java ME are on a strong convergence path
• Time to Market with an integrated, end-to-end platform, it is possible to deploy applications faster, process and analyze
in-flight data at lightning speeds and act on events as quickly as they occur – ROI & improved services.
• Innovation there are 9 million Java developers worldwide, allowing businesses to take advantage of readily available
developer talent to bring products and solutions to market faster.
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.6
Java SE 8
Key Features Benefit Message
Lambda Expressions Easier to distribute processing of
collections over multiple threads
Better application performance with simpler code
for enhanced productivity
Streams More functional programming style Functional style programming comes to Java -
simplification and flexibility
Annotations on types Better compile time error checking Speeds up app dev process
Date and Time API Simplified API Simplified API, improves developer productivity
Compact Profiles Reduced JRE size Expands the possibilities of Java for limited footprint
environments
Nashorn JavaScript engine Better JavaScript performance A new script engine with better performance for
Javascript users
JavaFX Better Swing interoperability;
Added HTML 5 features
WebView’s HTML 5 support, 3-D, embed Swing
nodes inside a Scene Graph, new UI controls
www.oracle.com/java8
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.7
Project Avatar
HTTP
(REST)
Web
Sockets
SSE
Data
Access
Change
Notification
Databases
Client
*.html
*.js
*.css
Application Server
Java EE
Container Services
Avatar Server
Avatar.js
Sculpting Container
Nashorn
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.8
Java SE 7
Java 7
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
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.9
Java SE 8Java SE 8
Java ME 8
Java 8
Java ME 8
APIs Language
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.1010
Lambda (JSR 335)
Date/Time API (JSR 310)
Type Annotations (JSR 308)
Compact Profiles
Lambda-Form Representation for Method Handles
Remove the Permanent Generation
Improve Contended Locking
Generalized Target-Type Inference
DocTree API
Parallel Array SortingBulk Data Operations
Unicode 6.2
Base64
Prepare for Modularization
Parameter Names
TLS Server Name Indication
Configurable Secure-Random Number Generation
Java SE 8
Nashorn
Enhanced Verification Errors
Fence Intrinsics
Repeating Annotations
HTTP URL Permissions
Limited doPrivileged
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.11
“Java SE 8 is about taking advantage of new parallel architectures.
Lambda, the key feature, opens the door for a new style of
development that can lead to more parallelism and other
capabilities like the Streams API are about parallel processing as
well. The changes are significant for the community and for
improving code quality everywhere in the long run.”
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.12
Java SE Embedded
Java 8 Release Highlights
Configurable Footprint
Better Performance
Optimized for Embedded
Flight Recorder
& Mission Control
Rich graphics
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.13
“It’s finally here. And it’s being touted as a watershed moment
for all those programmers who have been waiting for Oracle
to unveil an open-source platform that would allow the Java
community to truly innovate in a connected world.”
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.14
Platform Right-sizing
Java ME EP 8
(JSR 361)Java ME CLDC 8
(JSR 360)
Java ME 8
Power management framework
Remote deployment & management
Application monitoring, start-up, and recovery mechanism
Remote and local logging
File API
Standard API Compatibility
Location API
XML API
Fully headless operation
Robust application execution model
Device I/O API
Embedded Connectivity (GCF, cellular, DIO, etc.)
Access to Peripheral Devices
Web Services API
Java ME 8 SDK (Enhanced Embedded Tooling)
Modularized Software Services
Java SE Language Compatibility
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.15
Java ME 8
Key Features Benefit Message
Java ME CLDC 8: Updated VM +
alignment with Java SE 8
Aligned Java language, core APIs,
development, and tools
Alignment, unified development = even
greater code portability
Unified development experience & community
across Java
Skills transfer from edge devices
through to the enterprise
Improved configurability and optimized
footprint
Increased market reach /use cases -128 KB
RAM, 1 MB Flash/ROM onwards
Greater opportunity, increased market
reach
Java ME Embedded Profile 8: Embedded
Application Platform
Extending lifetime, flexibility, value and right
sizing of the platform and enhancing use cases
Embedded application development
made easier with Java
Software Provisioning and Management Supports remote deployment, management,
and monitoring of software components
Extracting greater value from devices
in-market with Java
Support for advanced connectivity Wide range of connectivity options-
wired/wireless
Greater Connectivity for the IoT era
needs
Enhanced security model Enables implementation of use case-specific
security policies for authentication and
authorization
Enhanced Security for the IoT era
The Platform for the Internet of Things
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.16
www.java.net/challenge
Show the world what you can do with Java + IoT for a chance to win a trip to
JavaOne for you and two team members.
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.17
oracle.com/java8
oracle.com/java8launch
java.oracle.com
@Java
blogs.oracle.com/java
ILoveJava
YouTube.com/Java
www.java.net/challenge
education.oracle.com/java
oracle.com/javamagazine
Copyright © 2014, Oracle and/or its affiliates. All rights reserved.18

Introducing Java 8

  • 1.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.1 Introducing Java 8 Alexandre Vieira Middleware Solutions Manager
  • 2.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.2 Create the Future with Java 8 • REVOLUTIONIZE APPLICATION DEVELOPMENT • HARMONIZE ENTERPRISE IT • EMPOWER THE INTERNET OF THINGS (IOT) www.oracle.com/java8
  • 3.
    3 Java SE 8 •Nearly four years in the making • Biggest upgrade to Java programming model ever! • Small set of features, with a big impact • Lambda Expressions • Default Methods • Bulk Operations on Collections • Coordinated co-evolution of language, libraries, and VM
  • 4.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.4 Java 8 for the Java Developer Community • Productivity & Performance • Project Lambda makes it easier to distribute processing of collections over multiple threads (better application performance and simpler code). • Productivity features enable developers to write more readable and shorter code with improved collections and annotations. • Modularity – Java SE Compact Profiles & Java ME as a subset of the Java SE platform • Profiles for Java SE large, medium and small footprint enables more efficient deployments • Embedded application development made easier for Java developers – Java ME updated with VM, Java Language, and Libraries, and features to be aligned with Java SE 8 while retaining the focus on small embedded devices. • Java developers are uniquely positioned to drive innovation for Mobile, Social, IoT & Cloud • Open, standards-based, community-driven platform, spanning from small devices to cloud-based development, combined with Java developers’ talent will make IoT a reality • Java developers have incredible opportunity can transfer their skills and knowledge to develop robust and highly performant applications from edge devices through to the enterprise. • Java is a community technology • JCP is important, it's growing, it's working - JDK 8 and Java ME 8 were developed with community participation
  • 5.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.5 Java 8 for the Enterprise and IoT • Java 8 enables significant productivity and performance enhancements • Java SE 8 contains numerous new features and enhancements that deliver application performance benefits and simpler parallel programming models • JDK 8 enables developers to be more productive with simpler and more readable code • Java 8 is the platform of choice for the Internet of Things, Mobile, Social & Cloud – all of your services can be implemented in Java from the edge device to the data center. • Harness the opportunity to use your existing and readily available developer talent to implement your IoT strategy. • Reduce costs while driving innovation and improving services (Reduce Complexity, Drive Innovation, Create Opportunity) • Java is the path to platform standardization for embedded environments. • Support any device, any size, any market – Java fills the void of no standards for embedded device application development. • Java SE and Java ME are on a strong convergence path • Time to Market with an integrated, end-to-end platform, it is possible to deploy applications faster, process and analyze in-flight data at lightning speeds and act on events as quickly as they occur – ROI & improved services. • Innovation there are 9 million Java developers worldwide, allowing businesses to take advantage of readily available developer talent to bring products and solutions to market faster.
  • 6.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.6 Java SE 8 Key Features Benefit Message Lambda Expressions Easier to distribute processing of collections over multiple threads Better application performance with simpler code for enhanced productivity Streams More functional programming style Functional style programming comes to Java - simplification and flexibility Annotations on types Better compile time error checking Speeds up app dev process Date and Time API Simplified API Simplified API, improves developer productivity Compact Profiles Reduced JRE size Expands the possibilities of Java for limited footprint environments Nashorn JavaScript engine Better JavaScript performance A new script engine with better performance for Javascript users JavaFX Better Swing interoperability; Added HTML 5 features WebView’s HTML 5 support, 3-D, embed Swing nodes inside a Scene Graph, new UI controls www.oracle.com/java8
  • 7.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.7 Project Avatar HTTP (REST) Web Sockets SSE Data Access Change Notification Databases Client *.html *.js *.css Application Server Java EE Container Services Avatar Server Avatar.js Sculpting Container Nashorn
  • 8.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.8 Java SE 7 Java 7 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
  • 9.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.9 Java SE 8Java SE 8 Java ME 8 Java 8 Java ME 8 APIs Language
  • 10.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.1010 Lambda (JSR 335) Date/Time API (JSR 310) Type Annotations (JSR 308) Compact Profiles Lambda-Form Representation for Method Handles Remove the Permanent Generation Improve Contended Locking Generalized Target-Type Inference DocTree API Parallel Array SortingBulk Data Operations Unicode 6.2 Base64 Prepare for Modularization Parameter Names TLS Server Name Indication Configurable Secure-Random Number Generation Java SE 8 Nashorn Enhanced Verification Errors Fence Intrinsics Repeating Annotations HTTP URL Permissions Limited doPrivileged
  • 11.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.11 “Java SE 8 is about taking advantage of new parallel architectures. Lambda, the key feature, opens the door for a new style of development that can lead to more parallelism and other capabilities like the Streams API are about parallel processing as well. The changes are significant for the community and for improving code quality everywhere in the long run.”
  • 12.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.12 Java SE Embedded Java 8 Release Highlights Configurable Footprint Better Performance Optimized for Embedded Flight Recorder & Mission Control Rich graphics
  • 13.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.13 “It’s finally here. And it’s being touted as a watershed moment for all those programmers who have been waiting for Oracle to unveil an open-source platform that would allow the Java community to truly innovate in a connected world.”
  • 14.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.14 Platform Right-sizing Java ME EP 8 (JSR 361)Java ME CLDC 8 (JSR 360) Java ME 8 Power management framework Remote deployment & management Application monitoring, start-up, and recovery mechanism Remote and local logging File API Standard API Compatibility Location API XML API Fully headless operation Robust application execution model Device I/O API Embedded Connectivity (GCF, cellular, DIO, etc.) Access to Peripheral Devices Web Services API Java ME 8 SDK (Enhanced Embedded Tooling) Modularized Software Services Java SE Language Compatibility
  • 15.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.15 Java ME 8 Key Features Benefit Message Java ME CLDC 8: Updated VM + alignment with Java SE 8 Aligned Java language, core APIs, development, and tools Alignment, unified development = even greater code portability Unified development experience & community across Java Skills transfer from edge devices through to the enterprise Improved configurability and optimized footprint Increased market reach /use cases -128 KB RAM, 1 MB Flash/ROM onwards Greater opportunity, increased market reach Java ME Embedded Profile 8: Embedded Application Platform Extending lifetime, flexibility, value and right sizing of the platform and enhancing use cases Embedded application development made easier with Java Software Provisioning and Management Supports remote deployment, management, and monitoring of software components Extracting greater value from devices in-market with Java Support for advanced connectivity Wide range of connectivity options- wired/wireless Greater Connectivity for the IoT era needs Enhanced security model Enables implementation of use case-specific security policies for authentication and authorization Enhanced Security for the IoT era The Platform for the Internet of Things
  • 16.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.16 www.java.net/challenge Show the world what you can do with Java + IoT for a chance to win a trip to JavaOne for you and two team members.
  • 17.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.17 oracle.com/java8 oracle.com/java8launch java.oracle.com @Java blogs.oracle.com/java ILoveJava YouTube.com/Java www.java.net/challenge education.oracle.com/java oracle.com/javamagazine
  • 18.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved.18