| Juicy picks: 11 Java language features to help modernize your team’s code |
|
| Week of July 12, 2021 |
|
|
|
|
|
|
Java keeps getting better. Over the past quarter century, the language has evolved with new capabilities, new structures, new syntax, and new features. Many of those changes help make you more productive as a developer by reducing the amount of boilerplate that needs to be written, documented, tested, and maintained. Other changes improve the readability of the code, which is a benefit not only to your team but also to a developer who tries to untangle cryptic spaghetti in the future.
In our main story, Ian Darwin describes 11 features added since Java 8 that can help with productivity and readability. For example, the java.time package can save you hours of coding and debugging. Streams can greatly simplify the processing of a flow of data objects. JShell can help you explore APIs.
Tell us about your favorite time-saving Java features and functions; write to javamag_us@oracle.com.
Take care, Alan Zeichick Editor in Chief, Java Magazine @zeichick
P.S. Nikhil Nanivadekar has boiled his productivity as a Java developer down to three key measures. “One, the amount of good or bug-free code that I write,” he says. “Two, the amount of code that I can delete. And three, the amount of help I give to fellow developers, be it on Twitter or GitHub or with my teammates while we are pair-programming.” Read more in “Personal metrics: Five productivity tips for developers.” |
|
| The newest articles |
Ripe for the picking: 11 essential Java features to help modernize your code Think of these Java improvements as tasty fruit that’s within your reach: If you aren’t using these 11 features in your software, you should be. At the very least, says Ian Darwin, you should taste-test them.
4 ready-to-try Java tools your team may not know about Get ready to add to your Java developer toolchain, says Alexa Weber Morales. There are a number of useful tools hidden in plain sight—and thanks to advice from Mikael Vidstedt, director of software engineering for the Java Virtual Machine at Oracle, you’ll feel like you gained a superpower by using them.
Dalia’s gentle introduction to Docker What are containers? What is Docker? Why would you use them? What do containers have to do with cryptocurrency? (Answer: Nothing.) Dalia Abo Sheasha explains how containers and Docker work in a very easy-to-understand fashion. Introduction to chaos engineering, Part 2: Four steps for disrupting complex systems Given a computer system and a certain number of characteristics you are interested in, you design experiments to see how the system fares when bad things happen. In each experiment, you focus on proving or refuting your assumptions about how the system will be affected, writes Mikolaj Pawlikowski. |
|
| A selection of Java podcasts |
|
|
|
| Other recent articles |
Introduction to chaos engineering, Part 1: Crash test your application, by Mikolaj Pawlikowski
Look out, Duke! Part 1: How to build a Java game with JavaFX and the FXGL library, by Frank Delporte
Web microservices development in Java that will Spark joy, by Maarten Mulders
A new reporting platform for managing installed Java versions and applications, by Alan Zeichick
A peek into Java 17: Continuing the drive to encapsulate the Java runtime internals, by Ben Evans Functional programming in Java, Part 1: Lists, lambdas, and method references, by Venkat Subramaniam Functional programming in Java, Part 2: Lambda reuse, lexical scoping and closures, and reduce(), by Venkat Subramaniam 10 good reads from the Java Magazine archives, by the Java Magazine staff
Java for the cloud, and the cloud for Java, by Leah Kulkhanjian |
|
|
|
| Complimentary subscription to Java Magazine |
Java Magazine is a deep dive into Java and the JVM. Find detailed explanations about the language and the platform written by experts and members of the Java development team.
Join a quarter of a million subscribers in getting useful, authoritative programming information delivered directly to your inbox. |
|
|
|
|
|