Modern Java in Action by Nicolai Parlog

Explore the latest features in modern Java, including Records, Structured Concurrency, Virtual Threads, and the new HTTP client, as well as best practices for naming conventions, text blocks, and more.

Key takeaways
  • Set.flatset() and linkedSet.flatset() are shortened from set.of() and linkedSet.of() respectively.
  • The JDK 23 preview features are used in the presentation.
  • Records are a feature that makes it easier to create immutable data classes.
  • There is a distinction between HTTP request and response, and the new HTTP client in JDK 11 allows for more flexibility.
  • Structured concurrency is used to handle threads in a more organized way.
  • Virtual threads provide a way to create threads easily and efficiently.
  • Records can be sealed to ensure that they are immutable.
  • Immutable objects are shared between threads more easily than mutable objects.
  • The HTTP client is used to fetch pages and handle their content.
  • The presentation uses Swing to parse URLs and find all the URLs related to a page. *alinkages are used to create a link set and map it to a stream.
  • Fowler’s presentation will be valuable for further learning.
  • The presentation does not cover all threads because it takes too long.
  • Naming conventions are important and should be followed to ensure code clarity.
  • text blocks are a feature that allows for easy string manipulation.
  • urlmutable and immutable content make it easier to create immutable requests.