THE CD BROWSER
LEARNING OBJECTIVE: To gain experience in developing a complete
application using all of the topics covered in this course.
DESCRIPTION: The outcome of this project is a CD Browser application to
allow the user to manipulate information about music CD's. People with
large CD collections can find it difficult to keep track of which CD's they have
and which songs are on which CD's. The CD Browser application you create
will allow those users to store information about their CDs making it easier for
them to manage their CD collections.
REQUIREMENTS: This project is actually broken down into smaller
components similar to how real world applications are developed. All classes
should compile and have a toString()
method (except the UI) along with a main method to allow for testing.
Create two classes, CD and Track,
that will be used to store information about the CD's and the Track's on those
CD's. For each CD, you should allow the user to store title, artist, record
label, and the year the CD was released. For each track, you should allow the
user to store the title of the track, the track number, the track length, and
the CD that the track belongs to. HINT:
You might want each CD should have an unique ID number, that same number should
be stored in each track that is on that particular CD. This allows you to be
able to group tracks onto a CD.
Your user interface should use arrays of CD and Track objects to manipulate the
data. Think of your array of CD's as all of the CD's in a person's CD
collection. You can use another sort of Collection if you prefer such as
Sets. Queues and Stacks are not appropriate and will make things more
complicated.
Create a MainUI class which will
encapsulate the User Interface that allows the user to view, edit, delete, and
add to the data. You should focus on
the elements in that order. You can use either textual or visual components as
you see fit. Your UI should allow the user to view, edit, add/create, and delete
CDs or Tracks. Deleting the last track from a CD should delete the CD..
PROGRAM TURNIN:
All java files should be submitted through WebSubmit. Do not wait until the last
minute to submit things. And make sure that at all times you have a program that
compiles. Programs that do not compile will be given a zero for that component.