Java SE 8 - Moving Java forward



Similar documents
Java SE 8 - Java Technologie Update

To Java SE 8, and Beyond (Plan B)

<Insert Picture Here> Java, the language for the future

Warum es Java noch immer gibt oder was nicht schiefging

JavaOne Update zur Java Plattform

The Future of Java. Terrence Barr Senior Technologist, Oracle

An Overview of Java. overview-1

Oracle Java SE and Oracle Java Embedded Products

CSCI E 98: Managed Environments for the Execution of Programs

Oracle Java SE Embedded

<Insert Picture Here> What's New in NetBeans IDE 7.2

Java Garbage Collection Basics

JAVA IN A NUTSHELL O'REILLY. David Flanagan. Fifth Edition. Beijing Cambridge Farnham Köln Sebastopol Tokyo

Java Application Developer Certificate Program Competencies

Java SE 7 Programming

<Insert Picture Here> Michael Hichwa VP Database Development Tools Stuttgart September 18, 2007 Hamburg September 20, 2007

Java 7 Recipes. Freddy Guime. vk» (,\['«** g!p#« Carl Dea. Josh Juneau. John O'Conner

The Fundamentals of Tuning OpenJDK

Java SE 8 Programming

Fachbereich Informatik und Elektrotechnik SunSPOT. Ubiquitous Computing. Ubiquitous Computing, Helmut Dispert

Java SE 7 Programming

Java SE 7 Programming

Habanero Extreme Scale Software Research Project

Enterprise Java. Where, How, When (and When Not) to Apply Java in Client/Server Business Environments. Jeffrey Savit Sean Wilcox Bhuvana Jayaraman

Communiqué 4. Standardized Global Content Management. Designed for World s Leading Enterprises. Industry Leading Products & Platform

Safe Harbor Statement

Application Servers - BEA WebLogic. Installing the Application Server

Java with Eclipse: Setup & Getting Started

JSR 310 Date and Time API Jan 24th, Stephen Colebourne, OpenGamma Ltd. Roger Riggs, Oracle Inc.

Server-Side JavaScript auf der JVM. Peter Doschkinow Senior Java Architect

1/20/2016 INTRODUCTION

Mobile Application Languages XML, Java, J2ME and JavaCard Lesson 04 Java

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Glassfish, JAVA EE, Servlets, JSP, EJB

GlassFish v3. Building an ex tensible modular Java EE application server. Jerome Dochez and Ludovic Champenois Sun Microsystems, Inc.

PTC System Monitor Solution Training

What s Cool in the SAP JVM (CON3243)

Oracle Java Micro Edition Software Development Kit

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010

OUR COURSES 19 November All prices are per person in Swedish Krona. Solid Beans AB Kungsgatan Göteborg Sweden

Free Java textbook available online. Introduction to the Java programming language. Compilation. A simple java program

Advanced Encryption Standard (AES) User's Guide

Free Java textbook available online. Introduction to the Java programming language. Compilation. A simple java program

CS Standards Crosswalk: CSTA K-12 Computer Science Standards and Oracle Java Programming (2014)

Programming Languages

An Oracle White Paper May Ready for Business: Oracle GlassFish Server

<Insert Picture Here> Oracle Security Developer Tools (OSDT) August 2008

Java Mission Control

HeapStats: Your Dependable Helper for Java Applications, from Development to Operation

Internationalization and Web Services

Habanero Extreme Scale Software Research Project

FDT for Mobile Devices

Fundamentals of Java Programming

Resource Utilization of Middleware Components in Embedded Systems

DIPLOMADO DE JAVA - OCA

FileMaker 11. ODBC and JDBC Guide

Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam

Production time profiling On-Demand with Java Flight Recorder

Crash Course in Java

<Insert Picture Here> GlassFish v3 - A Taste of a Next Generation Application Server

Tuning Your GlassFish Performance Tips. Deep Singh Enterprise Java Performance Team Sun Microsystems, Inc.

JAVA 2 Network Security

CSC 551: Web Programming. Spring 2004

Oracle Corporation Proprietary and Confidential

PLATFORM ENCRYPTlON ARCHlTECTURE. How to protect sensitive data without locking up business functionality.

Put a Firewall in Your JVM Securing Java Applications!

Chapter 1 Fundamentals of Java Programming

9/11/15. What is Programming? CSCI 209: Software Development. Discussion: What Is Good Software? Characteristics of Good Software?

Open Text Social Media. Actual Status, Strategy and Roadmap

Introduction to Oracle Mobile Application Framework Raghu Srinivasan, Director Development Mobile and Cloud Development Tools Oracle

JAVA r VOLUME II-ADVANCED FEATURES. e^i v it;

Java Interview Questions and Answers

<Insert Picture Here> Java EE 7: the New Cloud Platform

Extreme Performance with Java

Performance Optimization For Operational Risk Management Application On Azure Platform

Why IBM WebSphere Application Server V8.0?

Rational Application Developer Performance Tips Introduction

An introduction to creating JSF applications in Rational Application Developer Version 8.0

Your Old Stack is Slowing You Down. Ajay Patel, Vice President, Fusion Middleware

An Oracle White Paper September Advanced Java Diagnostics and Monitoring Without Performance Overhead

IBM Proof of Technology Discovering business application services, featuring IBM WebSphere Application Server Network Deployment V8

JavaFX Session Agenda

EclipseLink. Solutions Guide for EclipseLink Release 2.5

Mobile Operating Systems. Week I

Service Governance and Virtualization For SOA

Section 1.4. Java s Magic: Bytecode, Java Virtual Machine, JIT,

ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY

ORACLE APPLICATION EXPRESS 5.0

How To Create A C++ Web Service

Integrating SharePoint Sites within WebSphere Portal

CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages. Nicki Dell Spring 2014

Java on z/os. Agenda. Java runtime environments on z/os. Java SDK 5 and 6. Java System Resource Integration. Java Backend Integration

Java Programming Fundamentals

Project SailFin: Building and Hosting Your Own Communication Server.

Running and Testing Java EE Applications in Embedded Mode with JupEEter Framework

Java Card TM Open Platform for Smart Cards

How To Retire A Legacy System From Healthcare With A Flatirons Eas Application Retirement Solution

Transcription:

Java SE 8 - Moving Java forward Wolfgang Weigend Sen. Leitender Systemberater Java Technologie und Architektur 1 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle s products remains at the sole discretion of Oracle. 2 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Die Java Plattform Servers Desktop Embedded TV Mobile Card BD-J Key APIs Java EE JavaFX Java TV MSA Plattform Java SE Java ME Java Card Language Java Language Java Plattform 3 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Larger Security Policy Areas SA / CPU RSS Feeds Security Blog eblasts Java.com Security Deployment Communications Lifecycle Security Architecture Review Peer Review Security Testing Post Mortems Remediation CPU Security Alerts 4 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Agenda Java SE 8 (JSR 337) und Component JSR s JDK Enhancement Proposals (JEP s) Sprachänderungen Core Bibliotheken Internationalisierung Security Java Plattform Virtual Machine Zusammenfassung 5 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

JDK Enhancement Proposal s (JEP s) Regularly updated list of proposals Serve as the long-term roadmap for JDK release projects Roadmap extends for at least three years Uniform format and a central archive for enhancement proposals Interested parties can find, read, comment, and contribute Process is open to every OpenJDK Committer Enhancement is a non-trivial change to the JDK code base Two or more weeks of engineering effort significant change to JDK or development processes and infrastructure High demand from developers or customers 6 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Sprachänderungen 7 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Lambda Ausdrücke JSR-335 Functional Interfaces: An interface with one method Gehört zum Sprachumfang von Java SE 8 Final Release Specification file:///c:/java/jsr335-final/index.html Prototype Binaries verfügbar: http://jdk8.java.net/lambda/ Lambda Expressions (closures) /* (int x, int y) {return x+y; } */ Parameter Liste -> Operator Expression od. Statements (String x) -> {return!x.isempty();} Was hergeleitet werden kann, kann auch weggelassen werden 8 Copyright 2014, Oracle and/or its affiliates. All rights reserved. x ->!x.isempty()

Extension Methods Bringt Mehrfachvererbung und Funktionalität für Java Provide a mechanism to add new methods to existing interfaces Without breaking backwards compatibility Gives Java multiple inheritance of behaviour, as well as types but not state! public interface Set<T> extends Collection<T> { public int size();... // The rest of the existing Set methods } public T reduce(reducer<t> r) default Collections.<T>setReducer; 9 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Annotations on Java Types Annotations can currently only be used on type declarations Classes, methods, variable definitions Extension for places where types are used e.g. parameters Permits error detection by pluggable type checkers e.g. null pointer errors, race conditions, etc public void process(@notnull List data) { } 10 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Allgemeine Target-Type-Herleitung Bessere Nutzung von Generics class List<E> { static <Z> List<Z> nil() {... }; static <Z> List<Z> cons(z head, List<Z> tail) {... }; E head() {... } } List<String> ls = List.nil(); // Inferred correctly List.cons(42, List.nil()); error: expected List<Integer>, found List<Object> 11 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Zugriff auf Parameternamen während der Laufzeit Mechanism to retrieve parameter names of methods and constructors At runtime via core reflection Improved code readability Eliminate redundant annotations Improve IDE capabilities Auto-generate template code 12 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Kleinere Anpassungen Repeating annotations Multiple annotations with the same type applied to a single program element No more apt tool and associated API Complete the transition to the JSR 269 implementation DocTree API Provide access to the syntactic elements of a javadoc comment DocLint tool Use DocTree API to identify basic errors in javadoc comments Javadoc support in javax.tools Invoke javadoc tools from API as well as command line/exec 13 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Core Bibliotheken 14 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Erweiterung der Core Libraries mit Lambdas Keine einfache Aufgabe! Java SE 7 has 4024 standard classes Modernize general library API s Improve performance Gains from use of invokedynamic to implement Lambdas Demonstrate best practices for extension methods 15 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Concurrency Updates Scalable update variables DoubleAccumulator, DoubleAdder, etc Multiple variables avoid update contention Good for frequent updates, infrequent reads ConcurrentHashMap updates Improved scanning support, key computation ForkJoinPool improvements Completion based design for IO bound applications 16 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Bulk Data Operations für Collections Filter, Map, Reduce for Java Add functionality to the Java Collections Framework for bulk operations upon data This is commonly referenced as filter/map/reduce for Java The bulk data operations include both serial (on the calling thread) and parallel (using many threads) versions of the operations Serial and parallel implementations Operations upon data are generally expressed as lambda functions Parallel implementation builds on Fork-Join framework 17 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Parallel Array Sorting Additional utility methods in java.util.arrays parallelsort (multiple signatures for different primitives) Anticipated minimum improvement of 30% over sequential sort For dual core system with appropriate sized data set Built on top of the fork-join framework Uses Doug Lea s ParallelArray implementation Requires working space the same size as the array being sorted 18 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Lambda Ausdrücke Parallelisiert State of the Lambda Libraries Edition List<Student> students = new ArrayList<>(...);... double highestscore = students.parallel().filter(s -> s.getgradyear() == 2011).map(s -> s.getscore()).reduce(0.0, Integer::max); 19 Copyright 2014, Oracle and/or its affiliates. All rights reserved. More readable Better abstraction No reliance on mutable state Runs in parallel Works on any data structure that knows how to subdivide itself Concurrent Bulk Data Operations in Java collections API s (JEP 107) filter/map/reduce

Date and Time API JSR 310 JEP 150 by Stephen Colebourne A new date, time, and calendar API for the Java SE platform Supports standard time concepts Partial, duration, period, intervals date, time, instant, and time-zone Provides a limited set of calendar systems and be extensible to others Uses relevant standards, including ISO-8601, CLDR, and BCP47 Based on an explicit time-scale with a connection to UTC 20 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Date and Time API JSR 310 Package java.time java.time.chrono java.time.format java.time.temporal java.time.zone Description The main API for dates, times, instants, and durations Generic API for calendar systems other than the default ISO Provides classes to print and parse dates and times Access to date and time using fields and units, and date time adjusters Support for time-zones and their rules 21 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

JDBC 4.2 Minor enhancements for usability and portability Generic setter/update methods ResultSet, PreparedStatement, and CallableStatement Support new data types such as those being defined in JSR 310 REF_CURSOR support for CallableStatement DatabaseMetaData.getIndexInfo extended new columns for CARDINALITY and PAGES which return a long value New DatabaseMetaData method getmaxlogicallobsize Return the logical maximum size for a LOB 22 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Base64 Encoding und Decoding Currently developers are forced to use non-public APIs sun.misc.base64encoder sun.misc.base64decoder Java SE 8 now has a standard way java.util.base64.encoder java.util.base64.decoder encode, encodetostring, decode, wrap methods 23 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Statically-Linked JNI Libraries (JEP 178) Enhance the JNI specification to support statically-linked native libraries Modify the Java SE specification, and the JDK, to enable developers to package a Java runtime, native application code, and Java application code together into a single binary executable that does not require the use of shared native libraries Require no changes to existing Java code in order to use a static native library as opposed to a dynamic native library. A method invocation of the form System.loadLibrary("foo"), in particular, should be able to load the "foo" library regardless of whether that library is provided in static or dynamic form Allow a Java application to use a combination of static and dynamic native libraries, although static libraries must be in memory prior to any attempt to use them Allow JVMTI Java Agents to be optionally statically linked with Java runtimes 24 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Kleinere Anpassungen javax.lang.model implementation backed by core reflection Uniform annotation API to view compile-time and runtime reflective information Charset implementation improvements Reduced size of charsets, improved performance of encoding/decoding Reduced core-library memory usage Reduced object size, disable reflection compiler, internal table sizes, etc 25 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Internationalisierung 26 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Locale Data Packing Tool to generate locale data files convert from LDML (Locale Data Markup Language) Unicode Common Locale Data Repository (CLDR) support Locale elements supported from underlying platform 27 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

BCP 47 Locale Mapping (API Def.) Language tags to indicate the language used for an information object RFC-5646 (Language range) RFC-5456 (Language priority, preference) Language range Collection<String> Language priority List <String> Three operations added to Locale class filterbasic filterextended lookup 28 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Unicode 6.2 Java SE 7 support Unicode 6.0 Changes in Unicode 6.1 (February, 2013) Add 11 new blocks to java.lang.character.unicodeblock Add 7 new scripts to java.lang.character.unicodescript Support over 700 new characters in java.lang.character, String, and other classes Changes in Unicode 6.2 (September, 2013) Support a new Turkish currency sign (U+20BA) 29 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Security 30 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Konfigurierbarer Secure Random Number Generator Better implementation of SecureRandom Currently applications can hang on Linux JVM uses /dev/random This will block if the system entropy pool is not large enough Still a work in progress 31 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Enhanced Certificate Revocation-Checking API Current java.security.cert API is all-or-nothing Failure to contact server is a fatal error New classes RevocationChecker RevocationParameters 32 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Kleinere Anpassungen Limited doprivilege Execute Lambda expression with privileges enabled NSA Suite B cryptographic algorithms Conform to standards to meet U.S. government, banking requirements AEAD CipherSuite support Conform to standards to meet U.S. government, banking requirements SHA-224 message digests Required due to known flaw in SHA-1 Leverage CPU instructions for AES cryptography Improve encryption/decryption performance 33 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Kleinere Änderungen Microsoft Services For UNIX (MS-SFU) Kerberos 5 extensions Enhanced Microsoft interoperability TLS Server Name Indication (SNI) extension More flexible secure virtual hosting, virtual-machine infrastructure PKCS#11 crypto provider for 64-bit Windows Allow use of widely available native libraries Stronger algorithms for password-based encryption Researchers and hackers move on Overhaul JKS-JCEKS-PKCS12 keystores Simplify interacting with Java SE keystores for cryptographic applications 34 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Java Plattform 35 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Launch JavaFX Applications Support the direct launching of JavaFX applications Enhancement to the java command line launcher 36 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

JavaFX via Open Source auf dem Weg ins JDK 8 Open Source OpenJFX Project under OpenJDK First phase to focus on UI Controls Übergang Common license with Java SE (in place) JavaFX to be included in Java SE by JDK 8 JavaFX for Java SE Embedded (ARM) Standardisierung Oracle committed to JavaFX standardization JSR to be submitted through JCP 37 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

JavaFX goes Open Source ios- und Android-Implementierungen ios- und Android-Implementierungen werden Open Source Lizensierung mit eigenem Applikations-Co-Bundle 38 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Compact-Profile für festgelegten Speicherbedarf 39 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Compact-Profile mit Packages Compact1 Profil Compact2 Profil Compact3 Profil Vollständige JRE java.lang java.sql java.lang.management java.applet java.io jvax.sql javax.management java.awt java.nio javax.xml javax.naming java.beans java.text org.w3c.dom java.sql.rowset javax.activity java.math org.xml.sax javax.security.auth.kerberos javax.rmi java.net java.rmi org.ietf.jgss javax.rmi.corba javax.net javax.rmi javax.script org.omg java.util javax.transaction javax.xml.crypto javax.accessibility java.util.logging java.util.prefs javax.imagio java.security javax.security.sasl javax.print javax.crypto javax.security.acl javax.sound javax.security javax.lang.instrument javax.swing javax.annotation.processing javax.activation javax.lang.model javax.jws javax.lang.model.element javax.lang.model.type javax.lang.model.util javax.tools javax.xml.bind javax.xml.soap javax.xml.ws javax.annotation 40 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Vorbereitung zur Modularisierung Getting ready for Jigsaw Fix some assumptions about classloaders Use ServiceLoader rather than proprietary SPI code Tool to analyse application code dependencies Deprecate APIs that will impede modularization e.g. java.util.logging.logmanager.addpropertychangelistener Review and possibly change $JAVA_HOME normative references Relative v. absolute pathnames 41 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Abgespeckte Implementierungen Applications that ship bundled with a JRE don t need to include all the class libraries This does not break Write once, run anywhere Only applicable for bundled JRE JRE cannot be used by other applications 42 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Virtual Machine 43 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Lambda-Form Representation für MethodHandles Assembly language code re-written in Java Improve performance, quality, and portability of method handles and invokedynamic Reduce the amount of assembly code in the JVM Reduce native calls during method handle processing Better reference implementation of JSR 292 (invokedynamic) 44 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Project Nashorn Lightweight, high-performance JavaScript engine Integrated into JRE ECMAScript 5.1 compliant JavaScript that runs on the JVM Accessible via javax.script API or jjs command line Replacement for Rhino Exploits JSR-292 via Dynalink Fully part of the OpenJDK Available on Java SE and Java ME Nashorn - Der Weg zur polyglotten VM 45 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

46 Copyright 2014, Oracle and/or its affiliates. All rights reserved. Project Nashorn Invokedynamic Bytecode und MethodHandle

Nashorn Debugging - Experiments Debugging options IDE integration of Nashorn Common API for non-java languages Chrome/Safari wire protocols Askari o Askari is a sample JS debugger demonstrated at JavaOne SF 2013 o https://github.com/wickund/nashornexamples 47 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Nashorn - Einsatzvarianten Verwendung von Node.jar und Java über einen JPA-Wrapper durch XML und annotierte Java Klassen, erfolgt der Java EE-Zugriff von Server-seitigem JavaScript 48 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Nashorn - Einsatzvarianten JavaScript-Datenbank-JPA benutzt JavaScript JPA über ein Datenbankschema Java SE JavaScript Persistenz verwendet JPA, mit den Mappings vom Datenbankschema JavaScript/JSON Konfiguration 49 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

50 Copyright 2014, Oracle and/or its affiliates. All rights reserved. Project Avatar (1)

51 Copyright 2014, Oracle and/or its affiliates. All rights reserved. Project Avatar (2)

52 Copyright 2014, Oracle and/or its affiliates. All rights reserved. Project Avatar (3)

Retire rarely-used GC Combinations Rarely used DefNew + CMS ParNew + SerialOld Incremental CMS Large testing effort for little return Will generate deprecated option messages Won t disappear just yet 53 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Remove the Permanent Generation No more need to tune the size of it Current objects moved to Java heap or native memory Interned strings Class metadata Class static variables Part of the HotSpot, JRockit convergence 54 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Kleinere Anpassungen Enhanced verification errors Additional contextual information on bytecode verification errors Reduce cache contention on specified fields Pad variables to avoid sharing cache lines Reduce class metadata footprint Use techniques from CVM of Java ME CDC JEP Improve Contended Locking - Zurückgezogen Using research work form Oracle labs Small VM libjvm.so < 3MB by compiling for size over speed 55 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Java Development Kit - JDK Increased Build Speed, Simplified Setup Autoconf based build system./configure style build setup Enhance javac to improve build speed Run on all available cores Track package and class dependences between builds Automatically generate header files for native methods Cleanup class and header files that are no longer needed 56 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Java SE Roadmap JDK 7u21 Java Client Security Enhancements JDK 7u40/45/51 Java Flight Recorder in JDK Native Memory Tracking Java Discovery Protocol App Store Packaging Tools JDK 8 (Q1 2014) Lambda Complete JVM Convergence JavaScript Interoperability JavaFX 8 Public UI Control API Java SE Embedded support Enhanced HTML5 support JDK 8.1 (Q3 2014) Deterministic G1 JMC 6 Improved JRE installer Japp bundling enhancements JDK 8.2 JDK 9 Jigsaw Interoperability Optimizations Cloud Ease of Use JavaFX JSR 2013 2014 2015 2016 NetBeans IDE 7.3 New hints and refactoring Scene Builder support Scene Builder 1.1 Linux support 57 Copyright 2014, Oracle and/or its affiliates. All rights reserved. NetBeans IDE 8 JDK 8 support Scene Builder 2.0 support Scene Builder 2.0 JavaFX 8 support Enhanced Java IDE support NetBeans IDE 9 JDK 9 support Scene Builder 3.0 support Scene Builder 3.0 JavaFX 9 support

Zusammenfassung Java SE 8 enthält eine Menge neuer Funktionalität Language Libraries JVM Java entwickelt sich kontinuierlich weiter jdk8.java.net www.jcp.org openjdk.java.net/jeps 58 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Java 8 Launch WebCast am 25. März 2014 Java 8 is a revolutionary release of the world s #1 development platform It is the single largest upgrade ever to the programming model, with coordinated core code evolution of the virtual machine, core language, and libraries With Java 8, developers are uniquely positioned to extend innovation through the largest, open, standards-based, community-driven platform Community Member Brian Goetz Java Language Architect, Oracle Robert Vandette Consulting Member of Technical Staff, Oracle Roger Riggs Consulting Member of Technical Staff, Oracle Richard Bair Java Client Architect, Oracle Mark Reinhold Chief Architect, Java Platform Group, Oracle Peter Utzschneider Vice President, Product Management, Oracle Jim Gough Associate Leader, London Java Community John Rose Java VM Architect, Oracle Bruno Souza Founding Member, SouJava 59 Copyright 2014, Oracle and/or its affiliates. All rights reserved. Partner Adam Messinger Chief Technology Officer, Twitter

NightHacking Java 8 mit der JUG Darmstadt am 27. März 2014, 18:30 21:00 Uhr 60 Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Vielen Dank für Ihre Aufmerksamkeit! Wolfgang.Weigend@oracle.com Twitter: @wolflook 61 Copyright 2014, Oracle and/or its affiliates. All rights reserved.