Hope you're excited for this challenge because it's pretty much going to cover every topic leading up
to the session.
We're going to create a bank that manages checking savings and loan accounts, and it's also going to
manage transactions being made inside of each account.
In any case, the goal of part one is to read through the requirements and set up a plan of action.
So here we can see we're going to have a credit checking account, a savings account and a loan account.
And from first glance, every account shares three common fields, ID name and balance.
So right there, we know all of these classes are going to inherit these fields from a parent class.
We're going to have some inheritance.
And you can also tell that all of them share two common methods deposit or withdraw.
Accordingly, every account is going to have to override these methods and provide their own implementation.
It looks like checking is taxable, so it needs to sign a contract of behavior that ensures it implements
being taxed.
In other words, it's going to have to implement a taxable interface.
All right, then we have a transaction class.
Transactions need to be sorted based on timestamp.
Where do you learn about sorting objects?
So that's good.
We have a bank class that's going to manage account objects and transaction objects.
And remember, you should always write unit tests for the behavior inside the requirements before writing
any code.
So we'll be doing that as well.
All right.
This project is extremely stacked, so I hope you're ready to rock.
See you soon.