CS1410 Object oriented programing
Create a base which could be augmented and built on in the future. Whether it be for assignments to come, classes to come (for example AI), or even just for fun (if you think genetic algorithms are fun).
Essentially, what you will be building here is a world with creature objects in it. This creature object will need to be built in such a way that one day it could move, sense, eat, starve, etc. But to begin with it just needs to be created, die, and reproduce based on preset odds.’
So in terms of proper requirements this assignment must include, in both the UML diagram and code, the following:
- At least three classes and/or interfaces (3 total not 3 of each).
- At least two relationships.
As For a potential prompt you could read these requirements in these terms:
- A creature class with space for creature attributes and methods (eg. chances of replicating and dying). Required creature specific methods:
- die()
- reproduce()
- A world class with world and environment attributes and methods (eg. chances of spawning new creature without replication). Required World specific methods:
- createCreature()
- This method might hit the names.txt file in this project to get a random name for your creatures.
- spawnFood(), etc.
- Support for multiple creatures within the world.
- Main loop where these chances are ‘rolled’ for a number of times in a row.
You may, however, build any sort of system you wish as long as it has 3 classes and/or interfaces and 2 relationships. Use LucidChart
Links to an external site., draw.io
Links to an external site., or any other preferred diagramming tool to create your UML diagram.
This assignment will be submitted in two pieces, you will need to create a UML diagram showing how you plan to implement a coded solution to this prompt as well as the actual code. The UML diagram will have a separate due date and submission dropbox within canvas while the code will be submitted here in GitHub .
Example vid: (49) Why do things exist? Setting the stage for evolution. – YouTube