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.♿ Does this help everyone, or make the app harder to use: labels on every icon? (a) makes it harder (b) helps everyone
-
2.👆 Two designs for the same task (each arrow is one tap). How many taps does the shorter design save?
Design A: Home → Results → Pens
Design B: Home → Pens → Item → Menu → Cart → Address -
3.💾 What does this code show? (Positions start at 0.)
let friends = ["Kabir", "Arjun", "Riya", "Meera"];
show(friends[2]); (a) Meera (b) Kabir (c) Riya (d) Arjun -
4.🔀 What number does this shop app show?
let total = 530;
if (total > 500) {
total = total - 50;
}
show(total); - 5.🗒️ What is a must-have feature? (a) one the app cannot skip (b) a colour theme (c) a sound effect (d) a nice extra
- 6.True or false: how users feel after is about UX (the experience). (a) True (b) False
- 7.True or false: a 5-minute alarm ends is a tap event. (a) False (b) True
- 8.🔢 When you make an app, which comes LAST? (a) plan the screens (b) get an idea (c) release it (d) test the app
-
9.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let score = 35; // start at 35
line 2: score = score * 2; // double it
line 3: score = score - 2; // add 2
line 4: show(score); // show it - 10.🔐 Which permission does a bus tracker really need? (a) contacts (b) the microphone (c) location (d) the camera
-
11.🧪 What is the ACTUAL result of Test 3?
🎟️ Rule: a ticket costs 50 for children under 9, and 100 for everyone else.
function price(age) {
if (age < 9) {
return 50;
}
return 100;
}
Test 1: price(10) → expected 100
Test 2: price(11) → expected 100
Test 3: price(7) → expected 50 -
12.🔁 What is the LAST line this code shows?
let names = ["Arjun", "Riya", "Kabir", "Aman", "Zoya"];
for (let i = 0; i < names.length; i++) {
show("Hi, " + names[i]);
} (a) Hi, Riya (b) Hi, Kabir (c) Hi, Arjun (d) Hi, Zoya - 13.Which of these fits saving in the cloud? (a) a draft you are typing (b) the sound on/off setting (c) photos on two devices (d) notes to read offline
-
14.🔁 What is the LAST line this code shows?
let names = ["Meera", "Aman", "Riya", "Kabir"];
for (let i = 0; i < names.length; i++) {
show("Hi, " + names[i]);
} (a) Hi, Meera (b) Hi, Riya (c) Hi, Kabir (d) Hi, Aman - 15.🎯 Is this a user need or a feature: “I keep missing the bus”? (a) a feature (b) a user need
- 16.True or false: a homework planner is the best fit for a student who keeps forgetting due dates. (a) False (b) True
- 17.True or false: buttons almost touching is poor button design. (a) True (b) False
- 18.🔍 Which is the odd one out? (a) a racing challenge (b) a spelling coach (c) a word battle (d) a puzzle with levels
- 19.🧪 Values right at a limit, like age 12 for “under 12”, are called ___. (a) old cases (b) easy cases (c) phone cases (d) edge cases
- 20.🧩 In an app, what is a box to type a name? (a) a button (b) data (c) a screen (d) an input
-
21.📊 Survey: which problem bugs you most? How many more votes did “forgetting homework” get than “no quiet study place”?
forgetting homework: 10 votes
no quiet study place: 7 votes
wasting pocket money: 20 votes - 22.📱 Which one is installed on a phone: an app or a website? (a) an app (b) a website
- 23.Which of these is about UI (the look)? (a) how fast a task is done (b) the icon shapes (c) how easy sign-up is (d) how users feel after
-
24.🖼️ In this wireframe (top to bottom), what is right above the menu icon?
[ big picture ]
[ tab bar ]
[ search box ]
[ title text ]
[ filter buttons ]
[ menu icon ] (a) tab bar (b) title text (c) search box (d) filter buttons - 25.🧩 Scores, notes and settings that an app keeps are called ___. (a) screens (b) data (c) buttons (d) tabs
- 26.📅 An app team plans for 4 days, builds for 9 days, tests for 1 days and releases on 1 more day. How many days does the whole project take?
-
27.🗒️ Version 1 of a pocket-money tracker must be ready in 9 days. How many days are left for extras after the must-haves?
add money received: 1 days
add money spent: 1 days
show the balance: 5 days - 28.🔍 Which is the odd one out? (a) how users feel after (b) whether users get lost (c) the theme colours (d) how many taps it takes
- 29.🗂️ What kind of app is a step counter? (a) a tool app (b) a game (c) a learning app (d) a health app
- 30.🧭 Which part of navigation opens a list of pages? (a) a tab bar (b) the back button (c) a menu button
-
31.🧩 How many buttons does this app screen have?
[title] Order Snacks
[slider] Brightness
[button] Cancel
[switch] Sound
[text box] Name -
32.🧪 What is the ACTUAL result of Test 2?
🚚 Rule: delivery is free (0) when the order is 500 or more; otherwise it costs 40.
function delivery(total) {
if (total > 500) {
return 0;
}
return 40;
}
Test 1: delivery(700) → expected 0
Test 2: delivery(500) → expected 0
Test 3: delivery(300) → expected 40 - 33.Which of these happens at the build stage? (a) draw the user flow (b) write the code (c) pick the features (d) spot a problem to solve
- 34.Which of these is true of a final design? (a) has no real colours (b) uses the final pictures (c) is a quick sketch (d) shows where things go
- 35.True or false: the game-over page is a button. (a) False (b) True
-
36.🧪 One test case fails. Which one?
🎟️ Rule: a ticket costs 50 for children under 10, and 100 for everyone else.
function price(age) {
if (age <= 10) {
return 50;
}
return 100;
}
Test 1: price(10) → expected 100
Test 2: price(11) → expected 100
Test 3: price(7) → expected 50 (a) Test 2 (b) Test 3 (c) Test 1 - 37.Which of these is a screen? (a) your saved notes (b) the settings page (c) a date picker (d) your high score
- 38.⚙️ In an app, is sorting the scores an input, processing or an output? (a) output (b) input (c) processing
-
39.🧰 What does this code show?
function greet(name) {
return "Hi, " + name + "!";
}
show(greet("Kabir")); (a) Hi, Kabir! (b) greet (c) Hi, name! (d) Kabir -
40.🧰 A museum app works out the entry fee. What number does this code show?
function fee(age) {
if (age < 5) {
return 0;
}
return 20;
}
show(fee(12) + fee(1));
Answer key
- helps everyone
- 3
- Riya
- 480
- one the app cannot skip
- True
- False
- release it
- 68
- location
- 50
- Hi, Zoya
- photos on two devices
- Hi, Kabir
- a user need
- True
- True
- a spelling coach
- edge cases
- an input
- 3
- an app
- the icon shapes
- filter buttons
- data
- 15
- 2
- the theme colours
- a health app
- a menu button
- 1
- 40
- write the code
- uses the final pictures
- False
- Test 1
- the settings page
- processing
- Hi, Kabir!
- 20
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students