This document summarizes Jeanne Boyarsky's presentation on Java 11. Some key points include:
- Java releases are now every 6 months with smaller incremental updates, moving from a major version every 3 years to a faster release cycle.
- Local variable type inference (var) was added in Java 10 for less boilerplate code.
- Java 11 includes improvements to the HTTP client, garbage collection algorithms, and other minor features and bug fixes.
- Time-based versioning provides more clarity around Java version numbers and their component parts.
React Native vs Ionic - The Best Mobile App Framework
Java 11 – Keeping the Java Release Train on the Right Track
1. @jeanneboyarsky
Java 11 – Keeping the Java Release
Train on the Right Track
speakerdeck.com/boyarsky
Jeanne Boyarsky
QCon– June 28, 2018
2. InfoQ.com: News & Community Site
• 750,000 unique visitors/month
• Published in 4 languages (English, Chinese, Japanese and Brazilian
Portuguese)
• Post content from our QCon conferences
• News 15-20 / week
• Articles 3-4 / week
• Presentations (videos) 12-15 / week
• Interviews 2-3 / week
• Books 1 / month
Watch the video with slide
synchronization on InfoQ.com!
https://www.infoq.com/presentations/
java-10-11
3. Presented at QCon New York
www.qconnewyork.com
Purpose of QCon
- to empower software development by facilitating the spread of
knowledge and innovation
Strategy
- practitioner-driven conference designed for YOU: influencers of
change and innovation in your teams
- speakers and topics driving the evolution and innovation
- connecting and catalyzing the influencers and innovators
Highlights
- attended by more than 12,000 delegates since 2007
- held in 9 cities worldwide
15. @jeanneboyarsky
Wait, a major version every 6 months?
• + Syntax changes
• + Smaller features
• - Years of features
JDK 10 JDK 11
12 new
features
15 new
features
13
19. @jeanneboyarsky
How many languages do you know?
One (or zero)
Two – Five
Six or more
Examples
• Java
• Kotlin
• Groovy
• Scala
• SQL
• HTML
• JavaScript
• CSS
17
27. @jeanneboyarsky
Wait. So what happens next?
How long will Java 12 have security patches?
Answer: 6 months
What is the next LTS version
after Java 11?
Java 11 + 3*2 = 17
25
28. @jeanneboyarsky
A Tale of Two JDKs
Java Oracle JDK Open JDK
New Version Every 3 years Every 6 months
Cost Paid Free
Upgrade Options • Security patch
• Next version
• OpenJDK
• Interim
security patch
• Next version
26
33. @jeanneboyarsky
String name = "Jeanne”;
var name = "Jeanne";
List list = List.of(1, 2, 3);
var list = List.of(1, 2, 3);
• Syntactical sugar/less boilerplate
• Not immutable (no val)
(10)
31
41. @jeanneboyarsky
(10)
Pros Cons
Less typing Loss of information
Less redundancy Variable names matter
more
Can scan variable
names
Be careful!
39
http://openjdk.java.net/projects/amber/LVTIstyle.html
49. @jeanneboyarsky
Epsilon GC
(11)
• Never reclaims memory
• Program proceeds until run out of heap
• GC never runs
• To use:
• -XX:+UseEpsilonGC
• (or) -XX:+UseNoGC
47
50. @jeanneboyarsky
Epsilon GC Good for
(11)
• Performance/memory stress test
• Very short programs
• Last ditch performance improvements
(this probably isn’t you)
48
64. @jeanneboyarsky
New java launcher mode
Full command Shorthand
javac HelloWorld.java
java HelloWorld
java HelloWorld.java
Produces class file Fully in memory
For any program For programs with one
class
(11)
62
69. @jeanneboyarsky
Nashorn
Java 11 • Challenging to maintain
• Unclear adoption
• May be adopted
• Made it into Java 11
two days before cutoff
(11)
67
71. @jeanneboyarsky
Tying it all together
(10+11)
69
import java.nio.charset.*;
public class Unicode {
public static void main(String... args) {
System.out.print("Have a uD83CuDF7A");
System.out.println(" or a uD83EuDD64");
}
}
72. @jeanneboyarsky
No need to be
puzzled.
Java 11 LTS
6 months
New features
Go tell your
manager/team to
be ready for
September!
70