Back | Contents
Java Coding Example: Design
CheckBookMain -- does min amount. Starts the controller
and does nothing else. This could be morifed into a app
that does checking accounts or loans or whatever
for now just starts the "check" area
CheckBookController -- does all of interfacing with the user
asks to create books & title them.
handles each book & each check in each one
it will A. create or delete checkbooks
1. title each checkbook; (see Check class)
2. offer a printout of each one
3. (optional) save & read stored books
B. manage a particular book
1. add or delete checks
1. use CheckBook to add or delete (void) checks
2. (optional) modify checks; recreate internally
3. deposit or withdraw (see B-1)
4. calculate new balances (see B-1)
5. pick check nums on creation (pass to CheckBook)
B-2.
1. give a reister of all transactions using
OutputBox for each Book & CheckBook register
D.
1. allow user to quit
2. when user quits, dump a bank statement
for all the books to a file
Dump the outputBox objects
Margin Notes:
check num
write check
void
withdraw
deposit
register
Quit - dump Output Boxes
use savetoFile
CheckBook -- has methods to add checks, void checks,
make withdraw and deposits. It also calculates new
balances based on transactions. Also have an array
with all transactions recorded (like a register). Voided checks are
marked, it should be a structure? (maybe new object?)
Creates and destories registers; Searches for checks?
Check -- holds info on chekcs, creates new ones
check number - define on creation or defaulted by CheckBook
Owners Name on check (moved to CheckBook)
Date
PayTo
Written Amount
Numerical Amount
Name of Bank (moved to CheckBook)
Memo, sig not important
CheckBookRegister
holds info on a checkbook; it's index will match
CheckBook's index array.
Controlled by CheckBook. CheckBook creates one when made,
and removes it when destroyed
NOTES: Checks can get out of order, maybe resort them
or allow user to sort by check num or date or amount?
Rodney Beede � 1999-2000 | Top