Colorado State University Logo | CS 163/4: Java Programming (CS 1) Colorado State University Logo | CS 163/4: Java Programming (CS 1)
CS 163/4: Java Programming (CS 1)
Computer Science

Final Practical Project

For your final practical project, you will return to one of the other practicals. The goal of the revamp is for you to rebuild the project from the ground up using all four pillars of Object Oriented Programming.

  • Encapsulation
  • Abstraction
  • Inheritance
  • Polymorphism

The project focuses heavily on inheritance and polymorphism. The goal of the project is for it go the entirety of Unit 4, so know this is a large project. If done properly, you should be working a fair number of hours on it, but at the same time even a small portion of the project can be turned in for partial grades. Make sure to start early, and work every day during unit 4!

It should also be noted, very minimal instructions are given intentionally. Instead, we have provided both UML diagrams and javadoc for you to work through the solution on your own. This is to prepare you for future courses, where this starts to become the norm.

Select one of the project options below.

Honors Option Students
If you are interested in reworking a practical not listed as an honor option, reach out to your instructor. Please know that this is a very hard path to take as you will have little to no help, but if you really, really want to work on a better version of the previous practical - you are welcome to. They have ideas on what will be required including both a UML diagram/design along with the code developed, and will set up a different option for grading (presentation based, along with a code review). We will only consider this option if you already have an A in the course, and you have gotten an A on all the previous practicals.

Computer Science Department

279 Computer Science Building
1100 Centre Avenue
Fort Collins, CO 80523
Phone: (970) 491-5792
Fax: (970) 491-2466

CS 163/4: Java Programming (CS 1)

Computer Programming in Java: Topics include variables, assignment, expressions, operators, booleans, conditionals, characters and strings, control loops, arrays, objects and classes, file input/output, interfaces, recursion, inheritance, and sorting.