Java 9 modularity : patterns and practices for developing maintainable applications - Mak, Sander; Bakker, Paul (Beijing, China :, 2017)