In this chapter, we developed a general sorting algorithm implementing quicksort. We modified our project to be a multi-module Maven project and also to use Java module definitions. We were using JUnit to develop unit tests, and we developed the code using TDD. We converted the code from old-style Java to new using generics, and we used exception handling. These are the basic tools that are needed for the coming chapters, where we will develop a guessing game. First, we will develop a simpler version, and in the subsequent chapter, we will develop a version that uses parallel computing and multiple processors.




















































