Spring '26 Week 5
Resources
Edited Transcript
Hello and welcome to the week five announcements video for CC410 in spring 2026. So this week you should be wrapping up an example on inheritance and polymorphism. It’s one of the most important concepts in object-oriented programming and hopefully it’s something you’ve seen a little bit before. This week there’s also a start, stop, continue survey on the module. It’s just a chance for you to give me any feedback about things you want me to start doing in this class, anything you want me to stop doing in this class, or things that you like that I’m doing that you want me to continue to do. And then you have some time this week to be thinking about your final project because we’ll start meeting again for that here in a couple weeks to start talking about project ideas as we get toward the midpoint of the semester.
This week you’re going to do another example. This one introduces debugging and logging and lambda expressions, which are all really useful concepts for us to study a little bit in this class. Lambda expressions we will use a lot when we do more unit testing in a couple of weeks, but this adds some other neat features to programming languages you may or may not have seen before. This week you’re going to work on the third restaurant milestone, which is doing some inheritance and polymorphism in your code. And then you’ll also be scheduling your second final project meeting to meet with me sometime next week so that we can follow up with your final project ideas.
So for milestone three, all general requirements are enforced on this milestone. That means all of your code needs to have documentation. All of your code needs to have type checking. All of your code needs to be unit tested. All of your code needs to pass a style check. If you don’t pass the style check or have documentation or things like that, you could lose points. So make sure that you’re following all of those requirements, all the stuff that we did way back in the Hello Real World milestone. Make sure you have tox installed and working. Make sure you have the requirements file correct. Make sure you have your .gitignore file correct. All of those things, that’s what I’m going to be looking for in this milestone. The other big thing you’re going to be doing is adding inheritance to your code. So you’re going to be adding some base level classes for the entrees, sides, and drinks, and then kind of refactoring your code to use those. We’re also going to add some interfaces around that as well. You’re going to write some new unit tests to confirm that set of inheritance, especially in Python, it’s really important to have that. You’re going to update your UML diagram. Overall, this is only about 1,500 lines of changed code to add the inheritance and the unit tests. So it’s a little bit smaller of a milestone, but it gives you more time if you need to figure out the type checking or the format checking, the style checking, anything like that to get this milestone up and running. And as always, feedback is welcome if anything’s confusing on this milestone.
So like all the milestones, some big hints, first big thing on this milestone is to work in very small chunks. Try and do one feature at a time. Make sure you get that feature working before you start working on something else. That way you can easily test your code at any point. Commit early and commit often to GitHub. That’s going to be really important to you. The item interface, I want you to inherit that on the base level classes. So your base entree will inherit the item interface, but then your subclasses will just inherit that base entree class. They don’t need to explicitly inherit item because that will come down the chain. And then if there’s any syntax that’s confusing to you, please ask me questions and let me know. For a lot of you, this is probably one of the first times you’ve done some of this in Python. So if there’s anything confusing about this syntax, just let me know.
So a quick reminder on my schedule, I’m at a conference starting tomorrow through the end of this week. So I’ll be in St. Louis attending a conference. I’ll be busy during a lot of the days. Usually conferences, unfortunately, this conference is like four, eight hour days back to back. So because of that, I will have slower email responses and slower grading times. So when you submit stuff for this week, the example that’s due to, I believe it’s due today, that might take me a few days to get graded, but there’s not a milestone due this week, so you don’t have to worry about that. So just be aware, I’m out of town starting tomorrow and will be a little bit slower to get a hold of the rest of this week.
So looking ahead after this module, next week, we’re going to start working on design patterns, which again, I think is one of the most important things we teach in this class is design patterns and test doubles. Then we’ll switch over and start doing some user interface stuff right before spring break. And then we’ll have a little bit more time to spend on event-driven programming, web APIs, et cetera, from here on out.
So hopefully you’re enjoying the weather. It’s a false spring. So, you know, Lucy’s here mad in the snow, but hopefully everybody else is enjoying the nice spring weather that we have now. We’ll probably have one more round of snow before the end of spring, before spring really hits. But as always, hopefully things are going well. If you have any questions, let me know. Otherwise, I will see you next week.