Mobile development
Undergraduate · CS / Programming
Syllabus focus
Topics typically covered
Standard syllabus
Platform fundamentals
- Mobile UX patterns: navigation, gestures, accessibility
- Activity/fragment or SwiftUI view lifecycle (platform-dependent)
- Layouts and adaptive UI for phone and tablet
- Local storage: SQLite, SharedPreferences, Core Data (survey)
- Networking on mobile: REST clients and JSON parsing
Core features
- Permissions model: camera, location, notifications
- Background tasks and battery considerations
- Publishing to App Store / Google Play (overview)
- Debugging on emulators and physical devices
- Internationalization and localization basics
STEM / applied
Advanced mobile engineering
- Architecture patterns: MVVM, Clean Architecture (intro)
- Reactive streams (RxSwift/RxJava) or Combine (survey)
- Offline-first sync and conflict resolution (intro)
- Performance profiling and memory leaks on devices
- Push notifications and deep linking
Cross-platform options
- React Native or Flutter component model (survey)
- Bridging native modules when needed
- CI for mobile: fastlane, TestFlight, Firebase App Distribution
- Mobile security: keychain, certificate pinning (intro)
- Capstone: ship a minimal viable app
Shipping mobile software
- REST/GraphQL clients and offline-first sync (intro)
- Push notifications architecture (survey)
- Crash reporting and analytics hooks
- App store review guidelines awareness
- CI for mobile builds and device farms (survey)
- Capstone: polished app with auth and persistent data
Notes
Courses target iOS (Swift), Android (Kotlin), or cross-platform frameworks depending on the department.