Your final project for this course is the creation of a Virtual World Java application that results in a virtual world, complete with an object that will act as a human clone. A virtual world with a human clone would not be complete without additional objects for interaction, so you will be responsible for creating a "ShoutBox" and another object that will keep your human clone from getting lonely, and a virtual world application that will test your objects. Your final deliverables will include your working code (which your instructor will run in order to review your virtual world) as well as an annotated version of your written code that explains your reasoning for choices, how the code meets the given specifications for your project, how you ensured the accuracy and workability of your code, and methods used for testing and debugging.
The project is divided into four milestones, which will be submitted at various points throughout the course to scaffold learning and ensure quality final submissions. These milestones will be submitted in Modules Two, Five, Seven, and Eight. The final submission will be submitted in Module Nine.
In this assignment you will demonstrate your mastery of the following course outcomes:
- Write simple, accurate object-oriented programs using primitive data types, variables, data structures, and object-oriented principles
- Implement classes that meet the given specifications of object instance variables and behaviors
- Create operative algorithms using sequential logic structures, decision control structures, and loops
- Create and use methods that accept parameters and return results
- Test and debug object-oriented programs for accuracy in program functionality
- Document object-oriented code with comments that articulate the purpose and behavior of code for various audiences
Prompt
In creating your virtual world, you will need to create a MyClone class that will represent a virtual clone, another class that will represent a ShoutBox, and another class of your choice. The class of your choice can be anything you want to exist in your virtual world (a cat, a bird, a computer, etc.). This project is a prototype and there will not be any graphics, so you will create an application that unit tests the functionality of your three classes (your MyClone class, your ShoutBox class, and the class of your choice).