Skip to content

Rory Hackney

Software Developer

Web Developer / Designer

Screenshot of the terminal showing two students, total students are 403, total classes are 15, and the attendance list for CSC110h.

Course Student Manager

April 2023

Tags

  • Back End
  • Java
  • Software Development
  • Unit Testing

Java project that uses interfaces, classes, multidimensional arrays, text file scanning, and unit tests with JUnit to take separate student and course CSV files and process them in order to find student information for each course.

This project involved learning to use Java interfaces, classes, multidimensional arrays, file processing with Scanner, and unit tests with JUnit. The goal of the project was to take separate student and course CSV files and process them in order to find student information for each course.

Class diagram showing a Student Manager interface and class, a Student class implementing the Comparable interface, and relationships (arrows) between them.

I wrote the Java code using Scanner to read the files, line by line filling in a two dimensional array of Student objects and one dimensional array of String course names.

Once that was done, I implemented various methods in order to provide access to the data without exposing the private fields. I also handled unit testing using JUnit to ensure the methods worked as expected.

Unit tests for the getStudent and getStudentCount methods of StudentManager.

When you run Main.main(), the output shows the first and last student alphabetically, the total number of students and classes, and the attendance list for one specific class.

Screenshot of the terminal showing two students, total students are 403, total classes are 15, and the attendance list for CSC110h.

Thanks for checking out my project!

Back to Portfolio