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.💾 What number does this code show?
let coins = 3;
coins = coins - 2;
coins = coins + 3;
show(coins); - 2.🔢 In a quiz-app flow, which comes first: “read a question” or “see if it is right”? (a) see if it is right (b) read a question
- 3.🧭 Which part of navigation goes to the last screen? (a) a tab bar (b) the back button (c) a menu button
- 4.👥 A school app has 20 students, 80 teachers and 90 parents as users. How many users does it have in all?
-
5.⚙️ What number does this app show?
let price = 10; // typed by the user
let qty = 3; // typed by the user
let total = price * qty;
show(total); - 6.True or false: a website has a home-screen icon. (a) True (b) False
- 7.🧭 Tapping a tab usually takes you to ___. (a) that tab’s main screen (b) the last app used (c) a random page (d) the phone settings
- 8.True or false: the user types a letter is a tap event. (a) True (b) False
-
9.🔘 Our rule: buttons are at least 48 px tall. Which button is too small?
Done button: 44 px tall
Next button: 60 px tall
Send button: 56 px tall (a) Done (b) Next (c) Send -
10.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let lives = 37; // start at 37
line 2: lives = lives - 1; // take away 1
line 3: lives = lives + 5; // add 5
line 4: lives = lives - 2; // add 2
line 5: show(lives); // show it (a) line 4 (b) line 2 (c) line 1 (d) line 3 -
11.👆 The user taps the button 4 times. What does the label show now?
let on = false;
button.onTap = function () {
on = !on;
if (on) {
label.text = "ON";
} else {
label.text = "OFF";
}
}; (a) OFF (b) ON -
12.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let points = 34; // start at 34
line 2: points = points - 2; // take away 2
line 3: points = points + 6; // add 5
line 4: show(points); // show it (a) line 2 (b) line 3 (c) line 1 - 13.True or false: the button colours is about UX (the experience). (a) False (b) True
- 14.♿ A screen has 7 icon buttons. Only 3 of them have a text label for screen readers. How many still need a label?
- 15.Which of these fits saving in the cloud? (a) the sound on/off setting (b) your last game level (c) notes to read offline (d) a class leaderboard
- 16.👥 A library app has 230 readers, 35 librarians and 20 volunteers as users. Which user group is the biggest? (a) librarians (b) readers (c) volunteers
-
17.⚙️ Which line does the processing (works out the answer)?
line 1: let price = 20; // typed by the user
line 2: let qty = 3; // typed by the user
line 3: let total = price * qty;
line 4: show(total); (a) line 2 (b) line 3 (c) line 1 (d) line 4 - 18.💾 In most code, the first item of a list is at position ___. (a) 2 (b) 1 (c) 10 (d) 0
- 19.🔀 A screen with no way forward or back is called a ___. (a) dead end (b) tab bar (c) home screen (d) shortcut
- 20.🧰 Why write a function? (a) to hide errors (b) to slow the app (c) to reuse code (d) to make code longer
-
21.📊 Survey: which problem bugs you most? How many students voted in all?
wasting pocket money: 22 votes
forgetting birthdays: 24 votes
forgetting homework: 5 votes - 22.Which of these happens at the idea stage? (a) write the code (b) share the download link (c) draw the user flow (d) spot a problem to solve
-
23.🧰 What number does this code show?
function total(price, qty) {
return price * qty;
}
show(total(20, 2)); -
24.👆 The user taps the button 2 times. What number does the label show now?
let lives = 2;
button.onTap = function () {
lives = lives + 5;
label.text = lives;
}; -
25.🧪 What is the ACTUAL result of Test 3?
🚚 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(700) → expected 0
Test 2: delivery(650) → expected 40
Test 3: delivery(850) → expected 0 - 26.👥 A cricket club app has 115 players, 25 coaches and 230 fans as users. How many more fans than players are there?
- 27.💡 An app that tries to do everything at once is usually ___. (a) very small (b) easy to build (c) finished fast (d) hard to use
- 28.🧰 In function tip(bill), what is bill? (a) a parameter (b) a loop (c) an event (d) a screen
- 29.True or false: a website is installed on a phone. (a) False (b) True
- 30.Which of these is true of an app? (a) has a web address (b) comes from an app store (c) opens from a link (d) opens in a web browser
- 31.True or false: a shared to-do list fits saving in the cloud. (a) True (b) False
- 32.True or false: the user presses Save is a timer event. (a) False (b) True
-
33.🧩 Which of these is a button on this screen?
[title] New Note
[text box] City
[button] Help
[button] Next
[slider] Volume
[text box] Subject
[button] Send (a) Subject (b) Help (c) City (d) Volume -
34.👆 The user taps the button 3 times. What does the label show now?
let on = false;
button.onTap = function () {
on = !on;
if (on) {
label.text = "ON";
} else {
label.text = "OFF";
}
}; (a) OFF (b) ON - 35.True or false: a sleep tracker is a health app. (a) True (b) False
- 36.🗒️ You are planning version 1 of a quiz app. Which feature can WAIT for a later version? (a) show the score (b) show a question (c) confetti effects (d) check the answer
- 37.🎯 Which app would help this user most: a reader who finds small print hard? (a) a pocket-money tracker (b) a bus tracker (c) a homework planner (d) a big-text reader
- 38.True or false: typing your age is processing. (a) True (b) False
-
39.🧰 What number does this code show?
function points(stars) {
return stars * 10 + 5;
}
show(points(2) + points(3)); - 40.🗒️ You are planning version 1 of a homework planner. Which feature is a MUST-HAVE? (a) share tasks to friends (b) pick a theme colour (c) add a homework task (d) earn stickers
Answer key
- 4
- read a question
- the back button
- 190
- 30
- False
- that tab’s main screen
- False
- Done
- line 4
- OFF
- line 3
- False
- 4
- a class leaderboard
- readers
- line 3
- 0
- dead end
- to reuse code
- 51
- spot a problem to solve
- 40
- 12
- 0
- 115
- hard to use
- a parameter
- False
- comes from an app store
- True
- False
- Help
- ON
- True
- confetti effects
- a big-text reader
- False
- 60
- add a homework task
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students