Backlog
Module-Tools π
Mandatory Tasks
These tasks will help consolidate your learning for this sprint. You should complete as many of these as possible before class on Saturday.
Prep Exercises π Clone
Prep Exercises π
Task code
CYF-1155 - make sure to include this in your PR title or description.Link to the coursework
https://sdc.codeyourfuture.io/tools/sprints/5/prep/
Why are we doing this?
Read the prep and do all of the exercises in it.
Maximum time in hours
5
How to submit
Submit a pull request to this repo from your fork, containing a single Python file per exercise.
Optional Tasks
These are optional "stretch goals" to attempt when you have finished the mandatory tasks. They may be more challenging or require some additional research.
Radio Control App π
Radio Control App π
Learning Objectives
Task code
CYF-1208 - make sure to include this in your PR title or description.Radio Control App
This is part of an app that can be used to control an online radio station
Your task is to:
- Add type annotations where appropriate.
- Upgrade everything use dataclasses. Use
frozenwhere appropriate. - Observe how the given
__str__method works, and add one to the other classes - When the
__str__method is called, have it print the duration in formatted mm:ss rather than just seconds - Add a new class of
Person- you can use your imagination what this includes, but it should have at least a string name - Turn the fields for artists, host, and guest into
Personclasses - Make a new class
Podcastthat extends theTalkShowclass, with an extra string field for sponsor - Finish implementing the class
Playlist, and set it to takes a generic, e.g. eitherSongorTalkShoworPodcast
As you implement, make sure to keep checking with mypy and add your own code at the end to test it works correctly