< Unit 3 - Intro to App Design ('24-'25)

Lesson 2: Introduction to Design Mode

45 minutes

Overview

Students work through a progression of levels to build an understanding of how to use Design Mode to layout an app. The final level has students setting up the screen of an app by attempting to copy an image of an app.

CSP Conceptual Framework
      • CRD-2.C.1 - Program input is data sent to a computer for processing by a program. Input can come in a variety of forms, such as tactile, audio, visual, or text.
      • CRD-2.D.1 - Program output is any data sent from a program to a device. Program output can come in a variety of forms, such as tactile, audio, visual, or text.
      • CRD-2.D.2 - Program output is usually based on a program’s input or prior state (e.g., internal values).
CSTA K-12 Computer Science Standards (2017)
    • 3A-AP-16 - Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.

Agenda

Objectives

Students will be able to:
  • Set up the User Interface of an app including buttons, text, and images
  • Use meaningful names to for element ids

Preparation

  • Review the programming levels to ensure you understand the fundamentals of Design Mode in App Lab and how elements are created and their properties are modified.
  • Check the "Teacher's Lounge" forum for verified teachers to find additional strategies or resources shared by fellow teachers
  • If you are teaching virtually, consider checking our Virtual Lesson Modifications

Links

Heads Up! Please make a copy of any documents you plan to share with students.

For the teachers

Teaching Guide

Warm Up (10 minutes)

Discuss: Think of your favorite / most used non-social media app. In your Unit Journal, explore the function of the app, along with different inputs / outputs

  • Compare your journal with a partner and discuss common elements that both of your apps share

Discussion Goal: This prompt is designed to bring out students' prior experiences working with apps. If students aren't sure what app to choose, you can even ask them to pick to Code.org website. This discussion can pull out the fact that most apps contain images, buttons, and text that help users find and interact with information and content.

Assessment Opportunity

Create Performance Task Written Response Practice

In order to help prepare students for the new component of the AP Create Performance Task, there will be several opportunities throughout the curriculum to practice creating written responses aligned with the learning objectives that might be assessed on the exam.

Sample Prompt: How might you improve the user experience by updating input and/or output?


Unit Journal Template

Sample Response for Instructors

Remarks

Yesterday we took a look at a few different apps and talked about input and output. We also discussed the User Interface. Today we are going to learn how to build the User Interface in App Lab.

Activity (30 minutes)

Do This: Direct students to Code Studio.

Level 1: Students examine an app from the previous lesson. They should feel free to move around and change any elements they'd like. Encourage students to spend a good amount of time on this level discovering how things work. Here are a few things they should notice:

  • The screen can be changed by clicking the dropdown at the top of the app screen
  • Each element has different properties that can be changed depending on the type of element. For example, a label element has choices like "text alignment" and "font family" while an image has choices like "fit image".
Teaching Tip

Regrouping: You may want to pull the class back together after Level 1 to discuss their findings.

Levels 2-6: In these levels, students will learn how specific elements are set up and edited. Level 3 introduces the concept of themes, which control the overall "look" of an app. No matter what theme is chosen, students have the ability to override any element's design.

Level 7: Students work from a given image to recreate the user interface for an app. It's ok if their design does not exactly match the sample. The goal is for students to become comfortable setting up a User Interface before the sketch out plans for their own apps in the next lesson.

Wrap Up (5 minutes)

Discuss:

  • What elements collect input?
  • What elements display output?
  • Do you think there are elements that can do both?

Discussion Goal:

What elements collect input?

  • Buttons
  • Text Input
  • Check Boxes & Radio Buttons
  • Dropdown

What elements display output?

  • Images
  • Text

Do you think there are any elements that can do both?

  • This is a tricky question! Most elements can do both because they can all be clicked and can change their content. Students will see this in action in the next few lessons.
Teaching Tip

Use the Retrieve-Pair-Share strategy to facilitate this discussion by directing students to write down their thoughts and ideas first, then pair up students to compare their answers and expand their notes. This allows time for individual processing and idea generation before sharing thoughts with others. Ask students to share the ideas they discussed with their partners as a class.

For more ideas on how to adapt this strategy to fit the needs of your class, check out the CSP Guide to Classroom Discussions


Assessment: Check For Understanding

Check For Understanding Question(s) and solutions can be found in each lesson on Code Studio. These questions can be used for an exit ticket.

Question: Why is it important for element IDs to have meaningful names?

Creative Commons License (CC BY-NC-SA 4.0).

This work is available under a Creative Commons License (CC BY-NC-SA 4.0).

If you are interested in licensing Code.org materials for commercial purposes contact us.