Explore Java 9 with JShell and UML
About This Book
• A full account of Java 9’s new features
• This tutorial emphasises fluency using JShell exercises
• Get a thorough introduction to contract programming code reuse via Java generics
• Learn how to use the new module system
• How to use proper functional programming style inside Java 9
Who This Book Is For
This book can be understood by anyone who is a graduate of computer science or someone who has just begun working as a software engineer. Basically, an understanding of an object-oriented programming language like Python, C++ or indeed, an earlier Java version is sufficient. It would be helpful to have participated in the full product cycle of a software engineering project.
What You Will Learn
• Engage with object-oriented programming in Java 9, starting with code snippets in JShell
• Optimize your code, applying functional programming features
• Discover the advantages of modularity
• Become very proficient at using JShell itself
• Learn the new approach to Java programming, which uses the REPL as a prototyping tool
The release of Java 9 has brought many subtle and not-so-subtle changes to the way in which Java programmers approach their code. The most important ones are definitely the availability of a REPL, known as JShell, which will make experiments and prototyping much more straightforward than the old IDE-based project-led approach. Another, more subtle change can be seen in the module system, which will lead to more modularized, maintainable code. The techniques to take full advantage of object-oriented code, functional programming and the new modularity features in Java 9 form the main subjects of this book.
Each chapter will add to the full picture of Java 9 programming starting out with classes and instances and ending with generics and modularity in Java.
Style and approach
You will learn by doing: : using JShell as their prototyping environment, you will take full advantage of the new features of Java 9, in particular the full module system and the functional features of Java 9.. There won’t be any theory, only small and medium-sized exampled enabling the reader to use the new Java features in professional software engineering projects.