Pattern Matching: Small Enhancement or Major Feature?

- CEST
Joy

Hanno Embregts
Info Support, Software architect

Hanno Embregts is a Java Developer, Speaker, and Teacher at Info Support (the Netherlands). He has over 13 years of experience with both front- and back-end development, with a special interest in automating the software development process to the fullest. He likes his work best when it is fast-paced and versatile, which is why he juggles Java development, public speaking, and teaching courses at Info Support’s Knowledge Centre. When Hanno doesn’t have access to any kind of computer - which can only be called the most desperate of times - he plays in a band as a lead singer and guitar player. He is also a passionate fan of alternative rock band Switchfoot and Dutch football club Feyenoord. Last but not least: he has been told off repeatedly for using Star Wars quotes at work (things didn’t improve much by replying “I find your lack of faith disturbing”).


At first, it seemed to be just a small enhancement: the addition of “Pattern Matching for instanceof” (JEP 305) in Java 14. No more unnecessary casting after an instanceof, that ought to save us a few seconds a day! However, upon further investigation, you’ll quickly discover that pattern matching is not just an enhancement, but rather a vital puzzle piece in the grander scheme of things.

Why were switch expressions added to Java, for example? To make them support pattern matching in a later release! And why did Java 14 bring us records and will Java 15 contain sealed types? Because they could work really well with pattern matching in a later release! These new concepts are the foundation upon which advanced pattern matching features will be built.

Attend this session to get all caught up! You’ll hear about type patterns, deconstruction patterns, nested patterns, and even how pattern matching could improve serialization in the future. Live coding included, of course!