Before you keep reading...
Runestone Academy can only continue if we get support from individuals like you. As a student you are well aware of the high cost of textbooks. Our mission is to provide great books to you for free, but we ask that you consider a $10 donation, more if you can or less if $10 is a burden.
Before you keep reading...
Making great stuff takes time and $$. If you appreciate the book you are reading now and want to keep quality materials free for other students please consider a donation to Runestone Academy. We ask that you consider a $10 donation, but if you can give more thats great, if $10 is too much for your budget we would be happy with whatever you can afford as a show of support.
2.8. What is Abstraction¶
Time Estimate: 45 minutes
2.8.1. Introduction and Goals¶
An important concept and practice in Computer Science is abstraction. But what exactly is abstraction? This lesson is provides a quick introduction to this key concept.
- explain how data can be represented using bits
- describe abstractions in computer science and in the real world using key vocabulary such as procedural abstraction and data abstraction, out loud and in writing, with the support of vocabulary notes from this lesson.
2.8.2. Learning Activities¶
Practice with Abstraction
Your teacher may have you do some of the following activities.
- In pairs, play a guessing game, where 1 student draws something in 10 seconds, and the other student tries to guess what it is. After each drawing, discuss what were the essential features that were drawn that helped to guess what it was, and which features of the actual object were left out. The essential features make up the abstraction or abstract drawing for that object.
- In teams, play a few rounds of Fishbowl. Fishbowl (sometimes called Salad Bowl) is a game named by the bowl you put the slips of paper in. After each round, the points are added up and the papers are added back into the fish bowl. Each round lasts until either the papers are out or each member of the team has gone for one minute. Each round will add an extra layer of abstraction for you to get through. Use these slides to guide you.
- Go to the Google scientific calculator. This is an app that Google programmers have made. The buttons on this calculator are abstractions for the functions that they do. Identify at least 4 functions that are associated with 4 abstract buttons.
In this lesson, you learned how to:
Here is a table of the technical terms we've introduced in this lesson. Hover over the terms to review the definitions.
Check Your Understanding
Complete the following self-check exercises.
2.8.5. Reflection: For Your Portfolio¶
Answer the following portfolio reflection questions as directed by your instructor. Questions are also available in this Google Doc where you may use File/Make a Copy to make your own editable copy.