Modularity is coming to Java with Java 9, and it's a big deal! Unlike other Java releases that come with added features to the language that you can optionally use in your code, the Java Platform Modular System is a complete change in the way we think about, design, and write Java applications.
This book is a detailed guide and a hands-on companion to help you learn about and write modular code in Java. After reading and working through the code in this book, you'll have a deep understanding of Java 9 modularity, its features, the impact on the platform, and how you can use this new paradigm to build modular applications yourself.
This book has been carefully designed to provide a gentle introduction to the topics, while gradually ramping up the scope and complexity of the topics covered. This is not a reference book. For example, when I introduce a concept or a feature, I don't provide all possible details or syntax combinations in an attempt to be comprehensive. My primary goal while writing this book is to help you grasp the concepts and gain a deep understanding of Java modularity. The ordering of topics and discussions in this book has been carefully crafted to make sure you always have the necessary knowledge to understand the topic being covered. Thus, this book benefits greatly from being read sequentially. Having said that, if you are already aware of some of the topics and you want to jump to a specific topic, you should be able to do that too. A handy index is provided at the end of the book for this purpose.