
- 298 pages
- English
- ePUB (mobile friendly)
- Available on iOS & Android
Modular Programming in Java 9
About this book
Kick-start your modular programming journey and gear up for the future of Java developmentAbout This Book• Master design patterns and best practices to build truly modular applications in Java 9• Upgrade your old Java code to Java 9 with ease• Build and run a smooth functioning multi-module application.Who This Book Is ForThis book is written for Java developers who are interested in learning and understanding the techniques and best practices to build modular applications in Java. The book assumes some previous programming experience in Java 8 or earlier, familiarity with the basic Java types such as classes and interfaces, as well as experience in compiling and executing Java programs.What You Will Learn• Get introduced to the concept of modules and modular programming by working on a fully modular Java application• Build and configure your own Java 9 modules• Work with multiple modules and establish inter-module dependencies• Understand and use the principles of encapsulation, readability, and accessibility• Use jlink to generate fully loaded custom runtime images like a pro• Discover the best practices to help you write awesome modules that are a joy to use and maintain• Upgrade your old Java code to use the new Java 9 module systemIn DetailThe Java 9 module system is an important addition to the language that affects the way we design, write, and organize code and libraries in Java. It provides a new way to achieve maintainable code by the encapsulation of Java types, as well as a way to write better libraries that have clear interfaces. Effectively using the module system requires an understanding of how modules work and what the best practices of creating modules are.This book will give you step-by-step instructions to create new modules as well as migrate code from earlier versions of Java to the Java 9 module system. You'll be working on a fully modular sample application and add features to it as you learn about Java modules. You'll learn how to create module definitions, setup inter-module dependencies, and use the built-in modules from the modular JDK. You will also learn about module resolution and how to use jlink to generate custom runtime images.We will end our journey by taking a look at the road ahead. You will learn some powerful best practices that will help you as you start building modular applications. You will also learn how to upgrade an existing Java 8 codebase to Java 9, handle issues with libraries, and how to test Java 9 applications.Style and ApproachThe book is a step-by-step guide to understanding Modularity and building a complete application using a modular design.
Tools to learn more effectively

Saving Books

Keyword Search

Annotating Text

Listen to it instead
Information
Migrating Your Code to Java 9
- Migration strategy for codebases
- Automatic modules
- Library migration
- Multi-release JARs
Understanding the migration goal



Beginning the migration

module packt.shoppingbag { } 
$ mkdir out
$ javac --module-source-path src -d out $(find . -name '*.java')
$ javac --module-source-path src -d out $(find . -name '*.java')
./src/packt.shoppingbag/module-info.java:3: error: module not found: commons.collections4
requires commons.collections4;
^
1 error
Table of contents
- Title Page
- Copyright
- Credits
- About the Author
- About the Reviewers
- www.PacktPub.com
- Customer Feedback
- Preface
- Introducing Java 9 Modularity
- Creating Your First Java Module
- Handling Inter-Module Dependencies
- Introducing the Modular JDK
- Using Platform APIs
- Module Resolution, Readability, and Accessibility
- Introducing Services
- Understanding Linking and Using jlink
- Module Design Patterns and Strategies
- Preparing Your Code for Java 9
- Migrating Your Code to Java 9
- Using Build Tools and Testing Java Modules
Frequently asked questions
- Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
- Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app