Chapter 2. Software Development, Testing, and Maintenance
2.0 Introduction
This chapter focusses on techniques for building larger applications, maintaining code quality, and ensuring code correctness. First up is coverage of both Apache Maven and Gradle Inc’s eponmyous Gradle, the two main “build tools” which download and cache dependencies, build applications, and do much more for you in terms of automation. The remaining recipes concentrate on testing and maintaining effective software effectively.
2.1 Designing Applications: Packages, Modules
Problem
You want to be able to import classes and/or organize your classes, so you want to create your own package. You want to design software with a good structure that will work with the Java Modules System.
Solution
Evaluate the major sections of your application, and consider its structure as one or more major modules,
and packages withing modules.
Put a package
statement at the front of each file, and recompile with -d
or a build tool or IDE.
Discussion
One of the better aspects of the Java language is that it has defined a very clear packaging mechanism for categorizing and managing its large API. Modules consist of one or more packages, packages consist of classes, and classes consist of methods and fields.
As discussed in Recipe 2.2, modules provide a high degree of separation among different parts of your application. You might have three “tiers” in your application: the user interface, the middle tier or “business” ...
Get Java Cookbook, 5th Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.