Java is one of the most popular programming languages in use today. It is widely used for developing desktop, web, and mobile applications, as well as games, enterprise software, and more. Starting with Java 9, there has been a significant change to the language with the addition of modular features.
Modularity is an essential aspect of software design that helps developers create more maintainable, scalable, and secure applications. In Java 9, you can include modularity in your code right from the beginning of designing and coding your application using Java 9+’s JPMS or Project Jigsaw.
A module is a uniquely named, reusable group of related packages, resources, and a module descriptor that specifies the module’s name, dependencies, packages it explicitly makes available to other modules, services it offers, and services it consumes. Modularity adds a higher level of aggregation above packages, and the key new language element is the module.
Java 9’s modular features provide a way to achieve modularity in your code by applying them to your sample project. This course aims to convey the basics of Java 9’s Modularity (JPMS or Project Jigsaw) in less than an hour, in an “easy to catch” manner. By the end of the course, you will learn what modules are in general and why modularity is essential in software design. You will also be able to apply Java 9+’s modular features in action to your sample project.