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.📊 Survey: which problem bugs you most? Which problem should your app solve first?
no quiet study place: 7 votes
forgetting homework: 18 votes
missing the bus: 11 votes (a) no quiet study place (b) missing the bus (c) forgetting homework - 2.🔢 In a sign-up flow, which comes first: “type name and email” or “make a password”? (a) make a password (b) type name and email
- 3.🧑 Who is an app really made for? (a) its coder only (b) its charger (c) its users (d) its icon
-
4.🧪 What is the ACTUAL result of Test 1?
🎟️ Rule: a ticket costs 50 for children under 14, and 100 for everyone else.
function price(age) {
if (age <= 14) {
return 50;
}
return 100;
}
Test 1: price(14) → expected 100
Test 2: price(10) → expected 50
Test 3: price(15) → expected 100 - 5.🧭 Which part of navigation sits at the bottom? (a) a tab bar (b) a menu button (c) the back button
-
6.🔀 What does this battery rule show?
let battery = 14;
if (battery < 20) {
show("Low battery");
} else {
show("Battery OK");
} (a) Battery OK (b) Low battery -
7.👆 Two designs for the same task (each arrow is one tap). Which needs FEWER taps?
Design A: Home → Cart → Pay
Design B: Home → Offers → Address → Menu → Item (a) Design A (b) Design B - 8.🧰 What is a function? (a) a screen size (b) a type of phone (c) a list of colours (d) a named block of code
-
9.🧭 The app has tabs Feed, Chat, Settings. You start on Feed, then:
1. open “Help page”
2. tap Back
3. open “Help page”
How many times must you tap Back to reach the main screen of this tab? -
10.🔁 What is the LAST line this code shows?
let names = ["Riya", "Zoya", "Meera", "Kabir", "Arjun"];
for (let i = 0; i < names.length; i++) {
show("Hi, " + names[i]);
} (a) Hi, Meera (b) Hi, Arjun (c) Hi, Riya (d) Hi, Zoya - 11.🎯 Is this a user need or a feature: a dark mode switch? (a) a user need (b) a feature
-
12.💾 What does this code show? (Positions start at 0.)
let songs = ["Sunrise", "Stars", "Rain"];
show(songs[0]); (a) Rain (b) Sunrise (c) Stars -
13.🔘 Our rule: buttons are at least 48 px tall. Which button is too small?
Back button: 28 px tall
Cancel button: 52 px tall
Start button: 52 px tall
Save button: 56 px tall (a) Save (b) Back (c) Cancel (d) Start - 14.🗒️ You are planning version 1 of a water reminder. Which feature is a MUST-HAVE? (a) share your streak (b) custom alert sounds (c) water animations (d) see today’s total
- 15.🔢 In a food-order flow, which comes FIRST? (a) track the order (b) add it to the cart (c) pick a dish (d) open the menu
- 16.🗂️ What kind of app is a unit converter? (a) a health app (b) a game (c) a tool app (d) a learning app
-
17.🔀 What does this sign-up rule show?
let age = 17;
if (age >= 13) {
show("Welcome!");
} else {
show("Ask a parent");
} (a) Welcome! (b) Ask a parent -
18.🧩 How many inputs (text boxes, switches and sliders) does this screen have?
[title] Sign Up
[slider] Brightness
[button] Save
[button] Help
[text box] Phone
[text box] City
[text box] Due date
[button] Start -
19.👆 The user types Meera in nameBox and taps the button 1 time. What does the label show?
button.onTap = function () {
label.text = "Hello, " + nameBox.text + "!";
}; (a) Hello! (b) Hello, Meera! (c) Hello, nameBox.text! (d) Meera -
20.🧪 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(9) → expected 50
Test 3: price(14) → expected 100 (a) Test 1 (b) Test 2 (c) Test 3 - 21.Which of these requests asks for too much? (a) calling app → contacts (b) camera app → camera (c) torch → contacts (d) map app → location
-
22.🖼️ In this wireframe (top to bottom), which part is at the very bottom?
[ top bar ]
[ list of items ]
[ title text ]
[ Add button ] (a) top bar (b) Add button (c) list of items (d) title text -
23.🧭 The app has tabs Lessons, Quiz, Me. You start on Lessons, then:
1. open “Edit photo”
2. tap Back
3. open “Help page”
4. tap Back
5. open “Edit photo”
How many times must you tap Back to reach the main screen of this tab? - 24.🔢 When you make an app, which comes FIRST? (a) build the app (b) release it (c) get an idea (d) plan the screens
-
25.👆 The user types Riya in nameBox and taps the button 1 time. What does the label show?
button.onTap = function () {
label.text = "Welcome, " + nameBox.text + "!";
}; (a) Riya (b) Welcome, nameBox.text! (c) Welcome! (d) Welcome, Riya! - 26.📅 An app team plans for 4 days, builds for 12 days, tests for 1 days and releases on 1 more day. Planning starts on day 1. On which day does building finish?
- 27.True or false: a blank grey screen solves no real problem. (a) False (b) True
-
28.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
line 1: let score = 31; // start at 31
line 2: score = score + 4; // take away 4
line 3: score = score * 2; // double it
line 4: score = score + 4; // add 4
line 5: show(score); // show it - 29.True or false: a water reminder is the best fit for a grandparent with weak eyesight. (a) False (b) True
- 30.🗒️ What is a must-have feature? (a) a nice extra (b) a colour theme (c) a sound effect (d) one the app cannot skip
-
31.🧪 One test case fails. Which one?
🎟️ Rule: a ticket costs 50 for children under 11, and 100 for everyone else.
function price(age) {
if (age <= 11) {
return 50;
}
return 100;
}
Test 1: price(11) → expected 100
Test 2: price(8) → expected 50
Test 3: price(12) → expected 100 (a) Test 1 (b) Test 2 (c) Test 3 - 32.True or false: an alarm clock is a health app. (a) True (b) False
-
33.🔀 What does this battery rule show?
let battery = 3;
if (battery < 20) {
show("Low battery");
} else {
show("Battery OK");
} (a) Battery OK (b) Low battery - 34.🎨 UI stands for user ___. (a) input (b) internet (c) idea (d) interface
- 35.♿ A screen has 7 icon buttons. Only 6 of them have a text label for screen readers. How many still need a label?
-
36.🔁 What number does this code show?
let scores = [87, 85, 26];
let count = 0;
for (let i = 0; i < scores.length; i++) {
if (scores[i] >= 50) {
count = count + 1;
}
}
show(count); - 37.💡 Does an app idea like a button with no action solve a real problem? (a) No (b) Yes
-
38.🧪 What is the ACTUAL result of Test 1?
🚚 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(650) → expected 0
Test 2: delivery(300) → expected 40
Test 3: delivery(550) → expected 0 - 39.True or false: “strong colour contrast” helps everyone use the app. (a) False (b) True
- 40.🔍 Which is the odd one out? (a) colour as the only clue (b) tiny tap areas (c) sudden loud sounds (d) labels on every icon
Answer key
- forgetting homework
- type name and email
- its users
- 50
- a tab bar
- Low battery
- Design A
- a named block of code
- 1
- Hi, Arjun
- a feature
- Sunrise
- Back
- see today’s total
- open the menu
- a tool app
- Welcome!
- 4
- Hello, Meera!
- Test 1
- torch → contacts
- Add button
- 1
- get an idea
- Welcome, Riya!
- 16
- True
- 58
- False
- one the app cannot skip
- Test 1
- False
- Low battery
- interface
- 1
- 2
- No
- 0
- True
- labels on every icon
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students