App Dev Worksheet: Final Test
Developer's tip (Plan, design, build, check): Find the topic: what apps are, designing apps, or logic and building. Read every screen, list or code line carefully, top to bottom. For code, write each value down step by step and check it again.
NameDateTime takenScore ___ / 40
- 1.💾 Where should the app save a shared to-do list: on the phone or in the cloud? (a) on the phone (b) in the cloud
-
2.🧭 The app has tabs Lessons, Quiz, Me. You start on Lessons, then:
1. tap the Quiz tab
2. open “Match report”
3. tap the Lessons tab
4. tap the Me tab
How many times must you tap Back to reach the main screen of this tab? -
3.🧪 How many of these test cases pass?
🚚 Rule: delivery is free (0) when the order is 700 or more; otherwise it costs 40.
function delivery(total) {
if (total >= 700) {
return 0;
}
return 40;
}
Test 1: delivery(850) → expected 0
Test 2: delivery(650) → expected 40
Test 3: delivery(950) → expected 0 - 4.🔐 Which permission does a homework photo scanner really need? (a) the camera (b) location (c) contacts (d) the microphone
- 5.🔘 Is this good or poor button design: icons with no meaning? (a) good design (b) poor design
- 6.🔢 In a quiz-app flow, which comes LAST? (a) see if it is right (b) pick an answer (c) tap “Start quiz” (d) see the final score
- 7.💾 Where should the app save the sound on/off setting: on the phone or in the cloud? (a) in the cloud (b) on the phone
-
8.🔘 Our rule: buttons are at least 48 px tall. Which button is too small?
Help button: 72 px tall
Save button: 56 px tall
Next button: 28 px tall (a) Next (b) Save (c) Help -
9.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let lives = 36; // start at 36
line 2: lives = lives + 2; // double it
line 3: lives = lives + 2; // add 2
line 4: show(lives); // show it (a) line 3 (b) line 1 (c) line 2 - 10.🎨 UX stands for user ___. (a) extra (b) express (c) experience (d) example
-
11.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let points = 48; // start at 48
line 2: points = points + 5; // take away 5
line 3: points = points * 2; // double it
line 4: show(points); // show it -
12.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let lives = 49; // start at 49
line 2: lives = lives * 2; // double it
line 3: lives = lives - 6; // add 6
line 4: show(lives); // show it (a) line 1 (b) line 2 (c) line 3 - 13.🚀 Your app is at version 2.2.5. The next release fixes a small bug. What is its version number? (a) 2.3.0 (b) 3.0.0 (c) 2.3.5 (d) 2.2.6
- 14.🔢 When you make an app, what comes right after “plan the screens”? (a) test the app (b) build the app (c) release it (d) get an idea
-
15.🗒️ Version 1 of a homework planner must be ready in 18 days. How many days are left for extras after the must-haves?
add a homework task: 3 days
set a due date: 4 days
see tasks by day: 5 days - 16.⚙️ In an app, is speaking a command an input, processing or an output? (a) processing (b) input (c) output
- 17.👥 A school app has 60 students, 270 teachers and 150 parents as users. Which user group is the biggest? (a) students (b) parents (c) teachers
-
18.👆 The user taps the button 5 times. What number does the label show now?
let stars = 0;
button.onTap = function () {
stars = stars + 1;
label.text = stars;
}; -
19.🧭 The app has tabs Lessons, Quiz, Me. You start on Lessons, then:
1. open “Edit photo”
2. open “Help page”
3. tap the Lessons tab
4. open “Edit photo”
5. tap Back
How many times must you tap Back to reach the main screen of this tab? -
20.🧭 The app has tabs Feed, Chat, Settings. You start on Feed, then:
1. open “Badges”
2. tap the Chat tab
3. open “Edit photo”
4. tap Back
5. open “Badges”
How many times must you tap Back to reach the main screen of this tab? -
21.🔘 Our rule: buttons are at least 48 px tall. How many of these buttons follow the rule?
Cancel button: 36 px tall
Next button: 40 px tall
Save button: 52 px tall
Back button: 52 px tall -
22.👆 The user types Arjun in nameBox and taps the button 1 time. What does the label show?
button.onTap = function () {
label.text = "Hi, " + nameBox.text + "!";
}; (a) Arjun (b) Hi, Arjun! (c) Hi! (d) Hi, nameBox.text! - 23.Which of these is true of an app? (a) has a home-screen icon (b) opens from a link (c) opens in a web browser (d) needs no installing
- 24.🔢 In a sign-up flow, which comes LAST? (a) make a password (b) type name and email (c) tap “Sign up” (d) see the home screen
- 25.True or false: the font size is about UX (the experience). (a) True (b) False
- 26.💡 Does an app idea like a blank grey screen solve a real problem? (a) No (b) Yes
-
27.🧭 The app has tabs Home, Search, Profile. You start on Home, then:
1. open “Match report”
2. tap Back
3. open “Friend list”
How many times must you tap Back to reach the main screen of this tab? - 28.⚙️ In an app, is sorting the scores an input, processing or an output? (a) processing (b) output (c) input
-
29.🔀 Which badge does this quiz app show?
let marks = 71;
if (marks >= 80) {
show("Gold");
} else if (marks >= 50) {
show("Silver");
} else {
show("Bronze");
} (a) Gold (b) Silver (c) Bronze - 30.True or false: an alarm clock is a game. (a) True (b) False
- 31.Which of these is true of a website? (a) comes from an app store (b) has a home-screen icon (c) is installed on a phone (d) needs no installing
-
32.📊 Survey: which problem bugs you most? How many more votes did “no quiet study place” get than “losing water bottles”?
losing water bottles: 10 votes
wasting pocket money: 22 votes
no quiet study place: 21 votes - 33.♿ A screen has 5 icon buttons. Only 2 of them have a text label for screen readers. How many still need a label?
- 34.👥 A library app has 240 readers, 280 librarians and 120 volunteers as users. How many more readers than volunteers are there?
-
35.👆 The user taps the button 6 times. What number does the label show now?
let lives = 0;
button.onTap = function () {
lives = lives + 4;
label.text = lives;
}; - 36.🔀 With if / else if / else, how many parts run? (a) two (b) none (c) all of them (d) only one
- 37.True or false: icons with no meaning is good button design. (a) True (b) False
-
38.🖼️ How many parts (boxes) does this wireframe have?
[ tab bar ]
[ top bar ]
[ search box ]
[ list of items ]
[ Save button ]
[ filter buttons ] -
39.🧪 What is the ACTUAL result of Test 3?
🚚 Rule: delivery is free (0) when the order is 300 or more; otherwise it costs 40.
function delivery(total) {
if (total > 300) {
return 0;
}
return 40;
}
Test 1: delivery(200) → expected 40
Test 2: delivery(600) → expected 0
Test 3: delivery(750) → expected 0 - 40.👆 What kind of event is this: one second passes? (a) a text event (b) a timer event (c) a tap event (d) a load event
Answer key
- in the cloud
- 0
- 3
- the camera
- poor design
- see the final score
- on the phone
- Next
- line 2
- experience
- 106
- line 3
- 2.2.6
- build the app
- 6
- input
- teachers
- 5
- 0
- 1
- 2
- Hi, Arjun!
- has a home-screen icon
- see the home screen
- False
- No
- 1
- processing
- Silver
- False
- needs no installing
- 11
- 3
- 120
- 24
- only one
- False
- 6
- 0
- a timer event
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students