When you get started, do not fork this repository. Check out the master copy directly.
In this lab, you will practice:
- working with strings,
- more general object-oriented programmign patterns, and
- collaboration with many people!
I have created an abstract class called StringTransformer. You will create subclasses of it, which transform text in various amusing ways.
I’ve created three examples for you: Capitalizer, VowelBleeper, and IdentityTransformer. Take a look at those three classes, study how they work, and try them out in the TransformerTestUI.
Once you feel ready to create your own StringTransformer, head up to the front of the room, where I have brief specifications for a wide variety of transformers. Pick an appealing one, implement it, write tests for it, and try it in the UI. (I added some magic to the UI to detect all subclasses of StringTransformer. Once you’ve created your transformer, it should show up automatically)
Once it is working, commit and push! Because we are all sharing the same repository, you will see everybody else’s transformers when you pull. Having multiple people pushing and pulling from the same repository will create new problem, which you’ll have to work through.
Note that no two teams should work on the same specification!
Once you’ve completed your first transformer, grab another spec — or make up one of your own!