Create the class Robot described in the Karel++ book.
Description:
The Robot class described in the Karel++ text is a derived class of ur_Robot. Create class Robot as a derived lass of yourur_Robot class
Notes:
- The big change is that Robot has the boolean tests described in the Karel++ text.
- This class should be able to work with the world model you have, including performing tests.
- You must now consider multiple robots since there is a nextToARobot test a Robot can execute. However, leave this as a low priority item. Get all the other tests functioning first. (But don't forget about it.)
- Make your test program run a reasonable suite of test instructions to convince you, and to illustrate to me, that your classes are working. Your test code can now be much more interesting since you can test/probe your world model with a Robot without generating an error.
- Also, consider refining/reworking your world model.
- Consider reworking your ur_Robot model.
- Are there any flaws or difficulties with your current models? If so rework/refactor your models.
Note: Our ur_Robot class is intended to model the Karel++ ur_Robot class. So tests and any superfluous methods should not be available through ur_Robot. {We will give a little here to allow for a few useful utility methods like getter methods, a setWorld method and perhaps a display method.} Again, this to satisfy the requirement that we produce a class as similar to
ur_Robot as possible.
If your ur_Robot class is utilizing test-type methods, rename them and restrict them so that they are not publicly available. {They can be there for the programmer's use, but they are not supposed to be there for a consumer/user of the class. ur_Robot is supposed to only provide the 5 primitive instructions}