Deepwatch

Keyboard shortcuts

Space or k
Play or pause
j and l
Back or forward 10 seconds
Left and right arrows
Back or forward 5 seconds
f
Fullscreen
m
Mute or unmute
Shift and < or >
Slower or faster
n
Next lecture
?
Show or hide this list

Stanford CS193p: iOS Development with SwiftUI | 2025 | L10: Building Complex UIs

Stanford Online, 1 hr 11, 5.9K views, Dec 3, 2025

Show description

View course details: https://online.stanford.edu/courses/cs193p-ios-application-development All course materials are available at https://cs193p.stanford.edu. The 10th lecture of the 2025 version of Stanford's CS193p course (developing applications for iOS using SwiftUI). CodeBreaker is enhanced to be able to show multiple games. Enhancing an app's architecture to display multiple Views. Implements a GameChooser View with List, demonstrating @State management at the app root level, and implementing named CodeBreaker games with different themes (Mastermind, Earth Tones, Undersea). Shows how List combines ScrollView, ForEach, and dividers into a powerful container View for building apps. Along the way, refactors ForEach to use direct collection iteration instead of indices ensuring unique identifiers for stable animations by satisfying the three requirements for ForEach identifiers (unique, stable, Hashable). Also includes Hashable conformance for custom types (Code and Match enums), synthesized vs manual protocol conformance, and implementing Identifiable protocol with custom identity logic. Paul Hegarty is a Lecturer who has been teaching CS193p at Stanford since 2010.