Application platforms
Compare runtimes and release constraints through independent exercises.
Choose a platform using device capabilities and delivery needs.
Chapters
Choose an application platform from device requirements
Use an offline document reader to turn file access, notifications, background work, and distribution into testable requirements before choosing a runtime and application platform.
Structure an offline reader with SwiftUI
Design a SwiftUI reading list with stable document identity, explicit navigation, persistent offline storage, and cancellable downloads, separating view state from durable library data.
Build a recoverable mobile form with Compose
Build explicit draft, validation, persistence, and conflict states for a device inspection form, connecting Compose recomposition with Android lifecycle and offline recovery.
Manage pages and asynchronous state in Flutter
Build a teaching library around Flutter widget identity, navigation, and asynchronous request ordering, with a persistent repository and explicit stale-response, failure, and disposal handling.
Design offline notes with React Native and Expo
Design React Native and Expo reading notes with durable local records, a synchronization queue, idempotent requests, explicit conflicts, and platform-specific permissions.
Isolate file and interface privileges in an Electron tool
Separate Electron main, preload, and renderer responsibilities in an interview workbench, using approved file IDs, narrow IPC messages, and explicit transcription job states.
Add controlled offline behavior to learning pages
Give public learning documents, static assets, and private requests separate policies, explaining service-worker lifecycle, versioned caches, offline fallbacks, and consistent updates.
Handle connection and interface state in a Qt device client
Use a synthetic sensor panel to explain Qt signals, slots, QObject thread affinity, bounded sample buffers, connection states, and controlled shutdown behavior.
Separate page and background responsibilities in a browser extension
Design a user-triggered Chrome page-note assistant with separated contexts, narrow permissions, validated messages, and plain-text results that cannot trigger privileged actions.
Connect commands, files, and task notes in a VS Code extension
Build project task notes by connecting command declarations, extension lifecycle, scoped storage, Workspace Trust, URI handling, and cancellation-safe writes.
Understand Godot scenes and state through a small game loop
Build a square-collection exercise around Godot scenes, input actions, physics updates, and game state, checking pause behavior, repeated collisions, and restart cleanup.
Connect pages, identity, and backend data in a mini program
Design a learning-progress mini program with page boundaries, server-side login exchange, record authorization, network-response handling, and device domain validation.
Understand token state and confirmation on a local chain
Use a local development chain for exercise receipts, explaining ERC-721 identity, mint authorization, transfers, receipts, and the distinction between metadata and on-chain ownership.
Identify platform-specific checks before releasing an app
Separate build, installation, submission, and review states across mobile, desktop, and extensions, with artifact records, accurate permission disclosures, trusted updates, and recovery tests.