The assignment will build on the labs and reinforce the concepts and features of the java framework we’ve learned in weeks one through five. You’ll be building the core of a Games Information System (GIS). As we haven’t covered Graphical User Interfaces, GIS will be a commandline-based program, which means we’ll be focusing on good design and java programming techniques.
At the core of this application are your labs. The assignment is a consolidation and extension of the requirements for the labs.
Requirements
The design of GIS must follow good object-oriented principles and practices.
Your code must compile and run. Compile-time warnings are considered errors and must be eliminated from your code by using appropriate annotation tags.
The main class must be named Gis, and the jar file containing your runnable code must be named <student#>Gis.jar, i.e. A00123456Gis.jar.
All activity must be logged to a text file named <student#>Gis.log, i.e. A00123456Gis.log. Typical logged activities would be program startup and shutdown, and program flow. These activities will be logged as INFO messages. Any exception would be logged as ERROR messages. A sample output file can be found as A00123456Gis.log.
Exceptions must be handled such that no stack traces are displayed in the console, but as mentioned above, a message will be logged explaining the cause of the error. Stack traces will be logged to the log file so that programmers maintaining your application can fix the errors by looking at the log information.
Instead of the data being passed as commandline arguments, it will be read from a data file in plaintext format. For the assignment, there will be four data files:
- dat
- dat
- dat
- dat