1/25/18 - 2/15/18 Hours worked: 125
Handled components related to, broadly speaking, visualization
Responsible for writing and processing XML files
Implemented simulation-specific rules for cell and grid structure, state changes, and interactions
- Open Closed Principle
- Why Java Interfaces Are So Very Cool
- Replace Conditional with Polymorphism
- Commonality Analysis
- StackOverflow
- Diane Hu
- George Bernard
- Ashka Stephen
- File used to start: Main
- Known bugs:
- Running the program on Mac OS (High Sierra) will generate a warning that the class FIFinderSyncExtensionHost is implemented in 2 different places. This is tied to JavaFX's FileChooser class and is unavoidable when using a FileChooser. The message itself has no effect on functionality
- Errors program should handle
- XML Errors
- Invalid cell states
- Invalid global variables (either type or value)
- Required global variable(s) not specified
- XML Errors
- XML resource files required by project are stored in data/simulations.
- Best example data files
- gameoflife2.xml
- fire3_triangle.xml
- predatorprey3.xml
- segregation2.xml
- Rock-Paper-Scissors
- When a cell overtakes an empty or dead neighbor, it is assumed that a new cell is created with one less health point than the parent cell.
- Foraging Ants
- To accomodate non-rectangular cell shapes, the orientation element of this simulation was disregarded. Instead, an ant's next location was selected by prioritizing pheromone levels.
- Random Distributions
- All XML files will be for specific states only. There will be a "make custom grid" option that allows for random distributions.