cs193p-2020-swiftui
cs193p-2020-swiftui copied to clipboard
📘 Stanford CS193p Spring 2020 - Developing Apps for iOS (SwiftUI)
Lecturer: Paul Hegarty
Lecture 1: Course Logistics and Intro to SwiftUI
Slides
Lecture 2: MVVM and the Swift Type System
Slides
Reading 1
Assignment 1
Lecture 3: Reactive UI + Protocols + Layout
Slides
Lecture 4: Grid + enum + Optionals
Slides
Reading 2
Assignment 2
Lecture 5: ViewBuilder + Shape + ViewModifier
Slides
Lecture 6: Animation
- Property Observer
- @State
- Implicit("automatic") Animation
- Explicit Animation
- Explicit Animation Demo
- Transitions
- AnimatableModifier
Slides
Reading 3
Assignment 3
Lecture 7: Multithreading EmojiArt
Slides
Lecture 8: Gestures JSON
- UserDefaults
- Gestures
- Discrete Gestures
- Non-Discrete Gestures
- User Defaults won't write to disk right away
- inout gesture state
Slides
Assignment 4
Assignment 5
Lecture 9: Data Flow
- Property Wrappers
- @State
- @ObservedObject
- @Binding
- @EnvironmentObject
- @Environment
- @Publisher
- .sink{}/AnyCancellable
- .onReceive{}
- Publisher + URLSession(dataTaskPublisher)
Slides
Lecture 10: Modal Presentation and Navigation
Slides
Assignment 6
Lecture 11: Enroute Picker
Slides
Lecture 12: Core Data
Slides
Lecture 13: Persistence
- Persistence Overview
- Cloud Kit
- Create a record in Cloud Kit
- Query for records
- File System
- Sandbox
- File Manager
Slides
Lecture 14: UIKit Integration
Slides