Practice: OOP

Required Practice

Complete the exercises using the link below:

https://codecheck.io/assignment/2310122319f0cwmszh83xxjnzt515anebwy

When you start the exercise, you will be given a CodeCheck ID. You must save this ID and the private URL so that you can return to your work later! If you don't save the private URL (which contains the CodeCheck ID), you will have to start the exercise from the beginning. We will re-use this site throughout the term, so I recommend creating a document on your computer where you will save the private URLs for the whole term.

After you have completed the exercise, submit your CodeCheck ID to GradeScope using the following link:

/assignments/practice__objects_/assignments/practice__objects_/assignments/practice__objects_/assignments/practice__objects_https://www.gradescope.com/courses/544003/assignments/3518974_memory.pdf_memory.pdf_memory.pdf_memory.pdf

For submission to Anchor, please take a screen capture of each of your solutions (5 in total for this assignment) and submit them below.

Additional Practice

If you'd like more practice with debugging, you can try these practice resources:

Rectangle Area Bug

Practice using pdb to debug a small function. Clone this repo and follow the steps in the Readme to solve the bug.

"Spot the error"

Sometimes, you can read some code and spot what is going wrong. Practice training your eye to spot bugs by reading these debugging exercises on dev.to.

Bug Postmortem

You'll encounter authentic bugs all the time as you build software.

Was there a bug you encountered in your last project? What caused it? How did you solve it?

A Postmortem is a process for analyzing what happened in an incident. Try writing an incident report that explains the bug. Include:

  • A high-level summary of what happened
  • A root cause analysis. What were the origins of failure? Why do you think this happened?
  • Steps taken to diagnose, assess, and resolve. What actions were taken? Which were effective? Which were detrimental?
  • A timeline of significant activity
  • Learnings and next steps. What went well? What didn’t go well? How do you prevent this issue from happening again?

Debugging Mysteries

Debugging is about investigating. Finding out information, forming hypotheses, testing them, and checking what you learned. This exercise is about building up the mindset for debugging, but is not directly applicable to Python

The Debugging Mysteries are guided, interactive debugging stories. You'll debug 5 mysterious problems.

These mysteries are mostly about networking, and touch on software concepts you may not have seen yet. Still, the debugging process is the same! Find out information, form hypotheses, and test them.