SE1021
Software Development II

Our Week 5 Lab is Dr. Hasker's Lab 4

Requirement: You MUST name your repository se2811_username where username is your username. For example, if your name is Phileas Fogg and your username is foggp, you would name your repository se2811_foggp. You must use all lowercase for your repository name. Share this repository with me shortly after you create it. Meeting this requirement is 10% of the lab score.

Requirement: You MUST avoid duplicate code while creating the decorators. Hint: When implementing the double speed decorator, it may be helpful to have a move distance method within the Bee class that you can decorate. In any case, you MUST avoid duplicate code while creating the decorators.

Hint: You may want a "decorator manager decorator" that allows you to add and remove decorations to the Bee that it decorates. This allows a Bee to change which decorations it is using without updating all the references to the Bee in the program. There may be other cleaner variations on this idea.

An example solution for the Weeks 3 and 4 lab is provided here: lab3soln.zip. If you're submitting late, you should avoid looking at our code (or if you do use any part of our code in your solution, you should document it).