Java Term Project


You will develop a non-trivial program of your choice in Java Swing and present it by the end of this course.  The goal of this project is to demonstrate that you understand how to build a non-trivial OOP program with Java Swing GUI as a front end. A contract agreement between you and your instructor is required. The program needs to be of sufficient complexity to be approved. Ideally it will utilize many of the concepts and Java syntax that you have explored in this course.

(a) Contract Agreement

Your instructor must sign off on your proposed project before you can begin working on it. Please complete the contract below and send it to your instructor. Once all functionality is agreed upon, the instructor will sign and return it to you. The sooner you do this, the more time you have to work on your project, so don’t delay! Once signed by both parties, commit and push this contract to your project repository. Note that various programs can open and edit PDF files, including: Microsoft Word, Google Drive, and many free online editors. If necessary, you can also screenshot, print, type / hand write, scan / capture the contract. Only the contract portion of this document is required.

(b) Minimum Requirements

• Must have a Java Swing front-end GUI

• Must utilize some OOP paradigms: encapsulation, inheritance, polymorphism, abstraction

• Must contain at least 3 distinct classes

• Must utilize at least 1 array or ArrayList

• Must validate inputs from the user (input validation)

• Must save and/or read information from a file

(c) Example Project Ideas

These are just examples of sufficiently complex programs. Please feel free to propose your own project.

• A persistent, editable, file-backed collection of some objects (e.g. students, clients, events, etc.)

• An encrypter and decrypter of selected files

• A program to manage a checklist of TODO items

• A very simple painting program w/ different colors and brushes

• A more complete ATM program w/ multiple accounts, login, and file-backed encrypted data

• A scientific calculator that logs history of computations to file

• A very simple video game

• A polished D&D RPG player creator / stat generator

• etc.


Need a custom answer at your budget?

This assignment has been answered 4 times in private sessions.

© 2020 Codify Tutor. All rights reserved