Up to now, Hyperbola has been contained within a single plug-in and has been designed to run as a standalone desktop application. In this chapter, we look at restructuring Hyperbola to run in many different environments: on PDAs, in kiosks, or plugged into the Eclipse IDE. In addition, we talk about how to set up your development process to simplify supporting multiple product configurations from one code base. In this chapter, we:
Explain why multiple product configurations are interesting in the real world.
Detail the factoring of Hyperbola into multiple product configurations.
Examine how Hyperbola’s code is layered to be reusable across multiple configurations.
Provide rules to help refactor your own products.