Difference between revisions of "The Application - OOP344 20133"

From CDOT Wiki
Jump to: navigation, search
(Created page with '{{OOP344 Index | 20123}} Under Construction =Music Database= Your task for the final application is to create a personal music database program using the CUI library. ==the file…')
 
(Submission)
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{OOP344 Index | 20123}}
+
{{OOP344 Index | 20133}}
 
Under Construction
 
Under Construction
=Music Database=
+
=Book Database=
Your task for the final application is to create a personal music database program using the CUI library.
+
Your task for the final application is to create a personal book database program using the CIO library.
  
 
==the file==
 
==the file==
The data file to store the music database is in binary format.<br />
+
The data file to store the book database is in binary format.<br />
 
Records are kept in the following format:
 
Records are kept in the following format:
 
<big><syntaxhighlight lang="cpp">
 
<big><syntaxhighlight lang="cpp">
struct Song
+
struct Book
 
{
 
{
 
     char name[71];
 
     char name[71];
     char artist[71];
+
     char author[71];
     char album[71];
+
     char publisher[71];
 
     char releaseDate[11];
 
     char releaseDate[11];
     unsigned long genre;
+
     unsigned long isbn;
 
     unsigned long rating;
 
     unsigned long rating;
 
};
 
};
Line 43: Line 43:
 
:100% and up
 
:100% and up
 
# Search
 
# Search
#: to be able to narrow down the list of songs to the ones which fit to the search criteria  
+
#: to be able to narrow down the list of books to the ones which fit to the search criteria  
 
## Search on name on substring
 
## Search on name on substring
 
## Search on artist's name on substring
 
## Search on artist's name on substring
Line 51: Line 51:
 
## delete a record from the file
 
## delete a record from the file
  
==Submission==
+
==Submission==  
 
To submit your assignment, tag your final commit as "V1.0" in github. Go to the release section to accomplish this. If you need further instruction on this, please refer to the github help pages, Google works too.
 
To submit your assignment, tag your final commit as "V1.0" in github. Go to the release section to accomplish this. If you need further instruction on this, please refer to the github help pages, Google works too.
 +
 +
* Its '''TEAM''' ASSIGNMENT, not individual.
 +
* Due Date: <u>'''Saturday, Dec 14 at noon'''</u>

Latest revision as of 01:56, 14 December 2013


OOP344 | Weekly Schedule | Student List | Teams | Project | Student Resources
Under Construction

Book Database

Your task for the final application is to create a personal book database program using the CIO library.

the file

The data file to store the book database is in binary format.
Records are kept in the following format:

struct Book
{
    char name[71];
    char author[71];
    char publisher[71];
    char releaseDate[11];
    unsigned long isbn;
    unsigned long rating;
};

Selecting data file

There are two choices to select a data file to browse:

  1. Getting the file name through the command line argument list.
  2. Getting the file name through a prompt within the program.

Application Capabilities

Mandatory

90%
  1. Browse Opened data file
    1. goto next record
    2. goto previous record
    3. goto last record
    4. goto first record
    5. goto record by number
  2. edit the record
    1. save the edited record
    2. cancel editing a record without saving
    3. make sure edit information is not lost (saving unsaved data on exit with prompt)
  3. Add a record
    1. create an empty record and save it at the end of the file

Optional

100% and up
  1. Search
    to be able to narrow down the list of books to the ones which fit to the search criteria
    1. Search on name on substring
    2. Search on artist's name on substring
    3. Search on album's name on substring
    4. Search on the Date on exact match
  2. delete
    1. delete a record from the file

Submission

To submit your assignment, tag your final commit as "V1.0" in github. Go to the release section to accomplish this. If you need further instruction on this, please refer to the github help pages, Google works too.

  • Its TEAM ASSIGNMENT, not individual.
  • Due Date: Saturday, Dec 14 at noon