Needing to automate a task? Consider writing it in Java! Recent changes, and some long-existing APIs, have made Java a practical choice for writing small utility apps. Let's take a look!
1/7
Added in JDK 11, the java launcher can now directly launch single-file source-code applications. Making it easier to develop and launch small utility apps.
Local-variable type inference (var) was added in JDK 10. var can make it easier when working with complex types (i.e. when generics are involved) and easier to define variables in applications.
3/7
Templating out files is often a need for scripts. Text blocks added in JDK 15 make this much easier. Let's look at how to use Text Blacks:
Reading contents from files is also a common need when writing scripts and other small utility apps. Here are a few improvements in recent releases for efficiently processing and filtering file contents.
Records πΏ are one of the most exciting changes that have come to Java since Lambdas and Streams in Java 8. Let's review some of the key benefits and library integrations for Records.
1/6
Sometimes during data transform a data type is only needed with context of a single method. Local Records allow a data type to be defined as a single line within a method.
2/6
Serialization is one of the scariest areas in Java, with a lot of easy to overlook traps that could leave your application vulnerable. Records address a lot of common serialization vulnerabilities.
String is one of the most often utilized JDK classes by Java developers. Let's take a look at how String has been improved in recent Java releases, as well as some over looked features from older releases.
1/7
Text Blocks were added in Java 15, and introduce the concept of a 2-dimensional String. Text Blocks greatly improve the experience of working with markup languages like; XML, JSON, HTML, as Strings.
2/7
The String classes has seen a lot of work done to it since JDK 8, with many new helper methods being added. Check out this Sip of Java were I cover some of the key new additions.