Many student app ideas need data from outside the app: weather, schedules, sports stats, event lists, or user-created content. The challenge is that network requests can fail.
Scenario: club events app
A club events app fetches upcoming meetings from a web API. If Wi-Fi is weak, the app should not crash or show an empty screen without explanation.
Three states to design
- Loading: the request is in progress.
- Success: data arrived and can be displayed.
- Error: the app could not get fresh data.
Offline cache idea
A lightweight cache stores the last successful response. If the next request fails, the app can show the cached events with a note such as "Showing last saved events." That is much better than losing the whole experience.
What students should not do
- Assume every request succeeds.
- Hide errors from users.
- Retry forever without a delay.
- Store sensitive data unnecessarily.
Practice prompt
Write a flowchart for a sports schedule app: check cache, request fresh schedule, update display, handle failure. Then decide which messages the user should see at each step.
