Fall '21 Week 5

YouTube Video

Resources

Edited Transcript

Hello, and welcome to the week five video for CC 410 in Fall 2021. So this week, you should be wrapping up the third module, which is all on inheritance and polymorphism. And starting to work on refactoring your code to take advantage of some of that. So right now, the chapter on inheritance and polymorphism is due. And the example is due. The next milestone, which is milestone three is not due until next week, so you’ve got an extra week to work on that. But things I’d like you to work on is, make sure you fill out the start, stop, continue survey, and also start thinking about your final project a little bit, it might be still too early to start working on the code. But hopefully, you can start thinking about ideas and looking at the class structure we built for the restaurant project, and thinking about how that class structure might adapt to whatever final project you’re interested in doing.

This week, you should be working on debugging and logging, which is a really important concept. We’re also going to talk a little bit about lambda expressions, which are really important for some of the unit testing that you’ll need to be doing. So for next week, you’ll be working on a debugging logging example. And you’ll be working on the third restaurant milestone which is refactoring your code to take advantage of inheritance and polymorphism. Also, on October 1, you’ll have the second final project meeting that should be scheduled. However, in just a second, I’m going to talk about some scheduling that might impact exactly when you want to get that done.

So for milestone three, this is the first milestone that we require all the general requirements. So make sure you have your code unit tested, have your documentation. And this time we’ll be enforcing the style guide. So make sure that your code passes the style checker completely. There shouldn’t be any issues in your code. As far as the style checker is concerned. You’ll be adding some new unit tests, you’ll be updating your UML diagram. Thankfully, since this is mostly refactoring, you should only be working on about a 1500 lines of code, it’ll be a little bit smaller than your previous milestones. But it will be a lot more in depth the work that you’re actually doing to update this milestone.

So some big hints for this milestone, just like every other milestone, try and work in small chunks, get a short little bit working; commit early commit often. Remember that you can use GitHub to roll back. This is also the first milestone where you could try test driven development. As you’re working on code, you could try writing your unit tests first, and then building the code so that it will actually beat those unit tests that will actually fulfill them. I also have a hint that it’s not in the assignment. But it’s a big hint that you can actually inherit the order item interface on your base classes. So pizza drink and side, instead of inheriting it directly in all of the subclasses of that. It’s a little bit different infrastructure, but I think it actually works better. And also this, this particular milestone your work on some new and improved syntax. So if you have any questions on syntax, especially in Python, but maybe also in Java, feel free to let me know and ask those questions. And I’d be happy to answer ways to do that. This especially comes in with a style checker. Sometimes making the style checker in Python happy requires some weird syntax to wrap your lines. So make sure you keep that in mind.

An update on the schedule. I will be on vacation from October 1 to October the 10th. So that is a week from Friday through the following weekend. During that time, I’ll be on the road a lot. So I will have limited access to email and Discord. I will try and check in about once a day and answer what I can. But I may not be as quick at answering. Because of that the grading for milestone four might be delayed. Milestone four is still due the Monday that I’m gone. But it might take me a little bit time to get to that. Thankfully, it’s mostly just getting your GUI up and running. So there’s not a whole lot of code there. It’s mostly just building your GUI, so you kind of know if it works or doesn’t. Based on previous semesters, with that milestone, I expect minimal questions. But if there’s a lot of questions or a lot of confusion, I may adjust the due dates on either milestone four or five, if needed, just to give me enough time to answer those questions. So we’ll kind of play it by ear, I’ll do the best I can to stay in contact while I’m on the road. But if things happen, I will do my best to make sure that it’s fair and equitable for everybody involved.

So looking ahead from there, after this milestone, we’ll start switching over to graphical user interfaces. So we’ll spend some modules learning about GUIs, Event Driven Programming, we’ll spend a lot of time talking about design patterns and how we can use that to implement combos and orders in our system. And then we’ll start talking about external libraries and then get into things like web API’s.

So hopefully, this is a really good week. It’s hopefully the last warm week of the summer. So if you’re starting to feel the heat, I’m hoping that by the end of today, it’ll start getting a little cooler outside it’ll start feeling more like fall. As always, if you have any questions on your work as you work on these milestones, feel free to let me know I’m always available. You can catch me on discord by email or at tea time or you can schedule one on one office hours with me using calendly. Otherwise, I look forward to seeing your code and good luck this week.