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.

Learning Objectives: I will learn to
  • explain how data can be represented using bits
Language Objectives: I will be able to
  • 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

Lecture

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.

2.8.3. Summary

In this lesson, you learned how to:

2.8.4. Self-Check

Vocabulary

Here is a table of the technical terms we've introduced in this lesson. Hover over the terms to review the definitions.

abstraction
abstracting
constant
variable
data abstraction
procedural abstraction

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.

You have attempted of activities on this page