1 00:00:00,610 --> 00:00:04,630 Hope you're excited for this challenge because it's pretty much going to cover every topic leading up 2 00:00:04,630 --> 00:00:05,250 to the session. 3 00:00:05,770 --> 00:00:11,230 We're going to create a bank that manages checking savings and loan accounts, and it's also going to 4 00:00:11,230 --> 00:00:14,230 manage transactions being made inside of each account. 5 00:00:14,680 --> 00:00:18,760 In any case, the goal of part one is to read through the requirements and set up a plan of action. 6 00:00:19,240 --> 00:00:24,310 So here we can see we're going to have a credit checking account, a savings account and a loan account. 7 00:00:24,670 --> 00:00:29,890 And from first glance, every account shares three common fields, ID name and balance. 8 00:00:30,130 --> 00:00:35,230 So right there, we know all of these classes are going to inherit these fields from a parent class. 9 00:00:35,500 --> 00:00:36,820 We're going to have some inheritance. 10 00:00:37,330 --> 00:00:41,980 And you can also tell that all of them share two common methods deposit or withdraw. 11 00:00:42,220 --> 00:00:47,200 Accordingly, every account is going to have to override these methods and provide their own implementation. 12 00:00:48,420 --> 00:00:53,670 It looks like checking is taxable, so it needs to sign a contract of behavior that ensures it implements 13 00:00:53,670 --> 00:00:54,510 being taxed. 14 00:00:54,930 --> 00:00:57,780 In other words, it's going to have to implement a taxable interface. 15 00:00:58,650 --> 00:01:01,370 All right, then we have a transaction class. 16 00:01:01,380 --> 00:01:04,140 Transactions need to be sorted based on timestamp. 17 00:01:04,980 --> 00:01:06,510 Where do you learn about sorting objects? 18 00:01:06,510 --> 00:01:07,170 So that's good. 19 00:01:07,470 --> 00:01:12,690 We have a bank class that's going to manage account objects and transaction objects. 20 00:01:13,830 --> 00:01:18,570 And remember, you should always write unit tests for the behavior inside the requirements before writing 21 00:01:18,570 --> 00:01:19,020 any code. 22 00:01:19,020 --> 00:01:20,130 So we'll be doing that as well. 23 00:01:21,250 --> 00:01:21,580 All right. 24 00:01:21,580 --> 00:01:24,580 This project is extremely stacked, so I hope you're ready to rock. 25 00:01:24,640 --> 00:01:25,350 See you soon.