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.🧩 How many buttons does this app screen have?
[title] Order Snacks
[button] Back
[button] Cancel
[text box] Name
[slider] Text size
[text box] Notes
[button] Save
[text box] Email -
2.🧭 The app has tabs Home, Search, Profile. You start on Home, then:
1. open “Edit photo”
2. open “Badges”
3. tap Back
Which screen are you on now? (a) Home (b) Edit photo (c) Search (d) Badges - 3.🛠️ At which stage do you connect the data? (a) the plan stage (b) the idea stage (c) the build stage (d) the test stage
-
4.♿ Our rule: text is at least 16 px. Which text on this screen is too small?
Label: 10 px
Body text: 23 px
Menu: 16 px
Footer: 16 px (a) Body text (b) Label (c) Footer (d) Menu -
5.🐞 This code has a bug. What number SHOULD it show, if every line did what its comment says?
line 1: let points = 40; // start at 40
line 2: points = points * 2; // double it
line 3: points = points + 5; // add 5
line 4: points = points + 5; // add 3
line 5: show(points); // show it - 6.🎯 Which app would help this user most: a teen whose money runs out by Friday? (a) a recipe finder (b) a pocket-money tracker (c) a homework planner (d) a bus tracker
- 7.🔢 When you make an app, which comes LAST? (a) release it (b) test the app (c) build the app (d) plan the screens
- 8.🎯 Is this a user need or a feature: a dark mode switch? (a) a user need (b) a feature
- 9.Which of these is true of a wireframe? (a) uses the final pictures (b) has the real colours (c) uses plain grey boxes (d) shows the real fonts
- 10.Which of these is an input? (a) a date picker (b) the home page of an app (c) tap to Send (d) your friends list
-
11.🔀 Which badge does this quiz app show?
let marks = 50;
if (marks >= 80) {
show("Gold");
} else if (marks >= 50) {
show("Silver");
} else {
show("Bronze");
} (a) Bronze (b) Gold (c) Silver - 12.🔢 In a photo-post flow, which comes first: “open the camera screen” or “write a caption”? (a) open the camera screen (b) write a caption
-
13.🔀 What does this battery rule show?
let battery = 15;
if (battery < 20) {
show("Low battery");
} else {
show("Battery OK");
} (a) Low battery (b) Battery OK - 14.🗒️ You are planning version 1 of a homework planner. Which feature can WAIT for a later version? (a) add a homework task (b) see tasks by day (c) set a due date (d) pick a theme colour
-
15.👆 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) Hi! (b) Hi, nameBox.text! (c) Hi, Arjun! (d) Arjun -
16.💾 pop() takes off the last item. What does this code show?
let notes = ["Art", "Music", "Maths"];
notes.pop();
show(notes[notes.length - 1]); (a) Art (b) Maths (c) Music -
17.👆 Two designs for the same task (each arrow is one tap). How many taps does the shorter design save?
Design A: Home → Confirm → Address → Pay → Size
Design B: Home → Offers → Address → Pay -
18.🐞 This code has a bug. What number does it ACTUALLY show?
line 1: let stars = 51; // start at 48
line 2: stars = stars + 5; // add 5
line 3: stars = stars + 4; // add 4
line 4: show(stars); // show it -
19.👆 Two designs for the same task (each arrow is one tap). How many taps does Design A need?
Design A: Home → Shop → Search
Design B: Home → Offers → Item → Results → Menu → Confirm → Pay - 20.🧩 What do we call one full page of an app? (a) a screen (b) a variable (c) a cable (d) a battery
-
21.⚙️ Which line does the processing (works out the answer)?
line 1: let bill = 108; // typed by the user
line 2: let friends = 2; // typed by the user
line 3: let share = bill / friends;
line 4: show(share); (a) line 3 (b) line 1 (c) line 2 (d) line 4 - 22.🧭 About how many tabs suit a tab bar best? (a) 1 (b) 10 to 12 (c) 3 to 5 (d) 20
- 23.True or false: an app is installed on a phone. (a) True (b) False
-
24.🐞 Each comment says what its line SHOULD do. Which line has the bug?
line 1: let lives = 44; // start at 44
line 2: lives = lives + 2; // add 2
line 3: lives = lives + 2; // double it
line 4: show(lives); // show it (a) line 2 (b) line 1 (c) line 3 - 25.🐞 After fixing a bug you should ___. (a) delete the test (b) release at once (c) never test (d) test it again
-
26.💾 pop() takes off the last item. What does this code show?
let songs = ["Sunrise", "Rain", "Stars", "Ocean"];
songs.pop();
show(songs[songs.length - 1]); (a) Sunrise (b) Rain (c) Stars (d) Ocean -
27.🔀 What number does this shop app show?
let total = 510;
if (total > 500) {
total = total - 50;
}
show(total); - 28.👆 What kind of event is this: one second passes? (a) a load event (b) a timer event (c) a text event (d) a tap event
- 29.True or false: a big, easy tap area is good button design. (a) True (b) False
- 30.👥 A school app has 230 students, 150 teachers and 265 parents as users. Which user group is the biggest? (a) parents (b) teachers (c) students
- 31.🧪 A test fails when ___. (a) actual is not expected (b) the font is big (c) both are the same (d) the app is new
- 32.🔀 A screen with no way forward or back is called a ___. (a) tab bar (b) dead end (c) shortcut (d) home screen
-
33.🔀 What does this PIN rule show?
let pin = "3358";
if (pin.length === 4) {
show("PIN saved");
} else {
show("Use 4 digits");
} (a) PIN saved (b) Use 4 digits -
34.👆 The user types Zoya in nameBox and taps the button 1 time. What does the label show?
button.onTap = function () {
label.text = "Hello, " + nameBox.text + "!";
}; (a) Hello, Zoya! (b) Hello, nameBox.text! (c) Zoya (d) Hello! -
35.👆 The user taps the button 7 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) ON (b) OFF - 36.⚙️ In an app, is a result on screen an input, processing or an output? (a) processing (b) input (c) output
- 37.True or false: an app that just says hi solves no real problem. (a) False (b) True
-
38.🔘 Our rule: buttons are at least 48 px tall. Which button is too small?
Back button: 64 px tall
Send button: 48 px tall
Start button: 36 px tall
Next button: 48 px tall (a) Next (b) Send (c) Back (d) Start - 39.🔘 Is this good or poor button design: buttons almost touching? (a) good design (b) poor design
- 40.Which of these is a screen? (a) tap to go Next (b) today’s step count (c) tap to Send (d) the game-over page
Answer key
- 3
- Edit photo
- the build stage
- Label
- 88
- a pocket-money tracker
- release it
- a feature
- uses plain grey boxes
- a date picker
- Silver
- open the camera screen
- Low battery
- pick a theme colour
- Hi, Arjun!
- Music
- 1
- 60
- 2
- a screen
- line 3
- 3 to 5
- True
- line 3
- test it again
- Stars
- 460
- a timer event
- True
- parents
- actual is not expected
- dead end
- PIN saved
- Hello, Zoya!
- ON
- output
- True
- Start
- poor design
- the game-over page
Free app development lessons, practice and worksheets at talentjr.in/app-development-for-students