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 is a user flow? (a) the path through screens (b) a colour theme (c) a type of font (d) a charging cable
-
2.🧰 What does this code show?
function greet(name) {
return "Welcome, " + name + "!";
}
show(greet("Riya")); (a) greet (b) Riya (c) Welcome, Riya! (d) Welcome, name! - 3.👆 What kind of event is this: the user types a letter? (a) a load event (b) a tap event (c) a text event (d) a timer event
- 4.🚀 What should an app ask for only when it really needs it? (a) its icon (b) a permission (c) a font (d) its name
- 5.Which of these is true of a wireframe? (a) uses the final pictures (b) shows where things go (c) looks like the real app (d) has the real colours
- 6.Which of these is true of a wireframe? (a) uses the final pictures (b) has the real colours (c) shows the real fonts (d) has no real colours
-
7.🗒️ Version 1 of a water reminder must be ready in 8 days. How many days are left for extras after the must-haves?
set a reminder time: 4 days
log a glass of water: 2 days
see today’s total: 2 days -
8.🧪 One test case fails. Which one?
🚚 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(400) → expected 0
Test 2: delivery(300) → expected 0
Test 3: delivery(100) → expected 40 (a) Test 3 (b) Test 2 (c) Test 1 -
9.💾 What number does this code show?
let points = 7;
points = points - 5;
points = points + 2;
show(points); -
10.👆 The user taps the button 4 times. What number does the label show now?
let stars = 9;
button.onTap = function () {
stars = stars + 2;
label.text = stars;
}; - 11.Which of these is a feature? (a) “I keep missing the bus” (b) a share button (c) “Small text is hard” (d) “I forget my homework”
- 12.True or false: a final design looks like the real app. (a) True (b) False
-
13.🧰 What number does this code show?
function points(stars) {
return stars * 10 + 5;
}
show(points(1) + points(5)); - 14.🧩 Which part lets the user give the app information? (a) an icon (b) a logo (c) an input (d) a title
-
15.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let coins = 37; // start at 37
line 2: coins = coins - 2; // take away 2
line 3: coins = coins - 6; // take away 5
line 4: coins = coins * 2; // double it
line 5: show(coins); // show it (a) line 2 (b) line 3 (c) line 1 (d) line 4 -
16.🔁 What number does this code show?
let runs = [2, 20, 10];
let total = 0;
for (let i = 0; i < runs.length; i++) {
total = total + runs[i];
}
show(total); - 17.🎯 An app for “everyone” with no clear user usually ___. (a) wins every prize (b) is easy to build (c) needs no testing (d) helps nobody well
-
18.🔘 Our rule: buttons are at least 48 px tall. How many of these buttons follow the rule?
Help button: 40 px tall
Done button: 48 px tall
Send button: 40 px tall -
19.🧪 How many of these test cases pass?
📝 Rule: a quiz is passed with 5 or more right answers.
function result(right) {
if (right > 5) {
return "Pass";
}
return "Try again";
}
Test 1: result(6) → expected Pass
Test 2: result(5) → expected Pass
Test 3: result(4) → expected Try again - 20.🔐 Which permission does a bus tracker really need? (a) contacts (b) the microphone (c) the camera (d) location
- 21.🔢 In a food-order flow, what comes right after “check the cart”? (a) track the order (b) open the menu (c) pay for the order (d) add it to the cart
- 22.Which colour pair is hard to read? (a) white on black (b) black on yellow (c) red on green (d) white on dark green
- 23.True or false: a box to type a name is an input. (a) False (b) True
- 24.True or false: typing your age is an input. (a) False (b) True
-
25.🧭 The app has tabs Lessons, Quiz, Me. You start on Lessons, then:
1. tap the Me tab
2. tap the Lessons tab
3. tap the Quiz tab
How many times must you tap Back to reach the main screen of this tab? - 26.Which of these is a screen? (a) a slider for volume (b) a switch for dark mode (c) tap to go Next (d) the log-in page
- 27.🗒️ You are planning version 1 of a water reminder. Which feature is a MUST-HAVE? (a) share your streak (b) water animations (c) log a glass of water (d) custom alert sounds
- 28.🎯 Is this a user need or a feature: “I forget my homework”? (a) a user need (b) a feature
- 29.📅 An app team plans for 3 days, builds for 10 days, tests for 1 days and releases on 1 more day. How many more days does building take than testing?
- 30.Which of these requests is fair? (a) timer → your photos (b) camera app → camera (c) calculator → location (d) quiz app → microphone
- 31.💡 Which app idea solves this problem: students cannot find a quiet room? (a) a bill splitter (b) a study-room finder (c) a homework planner (d) a lost-and-found board
- 32.Which of these is true of the back button? (a) shows 3 to 5 icons (b) opens a list of pages (c) hides extra links (d) goes to the last screen
-
33.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let score = 46; // start at 43
line 2: score = score - 2; // take away 2
line 3: score = score - 5; // take away 5
line 4: show(score); // show it - 34.💾 Where should the app save your last game level: on the phone or in the cloud? (a) on the phone (b) in the cloud
- 35.True or false: you share the download link at the release stage. (a) False (b) True
- 36.Which of these makes the app harder to use? (a) big touch targets (b) strong colour contrast (c) labels on every icon (d) icons with no labels
- 37.Which of these is an input? (a) the settings page (b) tap to Save (c) the game-over page (d) a slider for volume
-
38.🔁 What number does this code show?
let scores = [18, 4, 4];
let total = 0;
for (let i = 0; i < scores.length; i++) {
total = total + scores[i];
}
show(total); -
39.🧪 How many of these test cases pass?
📝 Rule: a quiz is passed with 5 or more right answers.
function result(right) {
if (right >= 5) {
return "Pass";
}
return "Try again";
}
Test 1: result(9) → expected Pass
Test 2: result(7) → expected Pass
Test 3: result(3) → expected Try again - 40.⚙️ In an app, is typing your age an input, processing or an output? (a) output (b) processing (c) input
Answer key
- the path through screens
- Welcome, Riya!
- a text event
- a permission
- shows where things go
- has no real colours
- 0
- Test 2
- 4
- 17
- a share button
- True
- 70
- an input
- line 3
- 32
- helps nobody well
- 1
- 2
- location
- pay for the order
- red on green
- True
- True
- 0
- the log-in page
- log a glass of water
- a user need
- 9
- camera app → camera
- a study-room finder
- goes to the last screen
- 39
- on the phone
- True
- icons with no labels
- a slider for volume
- 26
- 3
- input
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students