Spring 2021 version of Stanford University's course CS193p (Developing Applications for iOS using SwiftUI)
Solutions for Stanford CS193p 2021 course assignments and source code for demos.
Projects are written in Xcode Version 12.4.
- MemorizeApp
- SwiftUI, MVVM
- Swift syntax and correct usage:
- Optional
- Enumerations
- Protocols
- Closures
- Access control
- @State, @ViewBuilder
- AspectVGrid, Shape, GeometryReader
- Animations (implicit vs. explicit animations, Animation structs, transitions, matched geometry effects, the impact of container views, Shape animations, animating ViewModifiers, matchedGeometryEffect, AnimatableModifier)
- EmojiArt
- Collections of Identifiables, UIColor, UIImage and Item Providers
- Grand Central Dispatch
- Gestures (drop, rotate, scale, tap, double tap etc.)
- UserDefaults
- The File System
- Codable archiving
- JSON encoding/decoding
- Error handling
- Wrappers: @ObservedObject, @State, @Binding, @Environment, @EnvironmentObject, @StateObject
- TextFields, Forms, NavigationViews, Lists, sheets, popovers, EditMode
- NavigationViews, NavigationLists
- Alert
- Publisher protocol
- CloudKit, CoreData review
- Document Architecture
- App and Scene protocols
- WindowGroup, DocumentGroup, @SceneStorage
- @ScaledMetric
- Undo/Redo
- UIKit Integration
- Multiplatform (macOS + iOS)
- SetGame
- themes from MemorizeApp from scratch
- Enroute
- Picker, Toggle
- CoreData
Type | Quantity | Completion |
---|---|---|
Lectures | 18 / 18 | 100% |
Assignment I (not commited) | 10 / 10 | 100% |
Extra credits (not commited) | 2 / 2 | +100% |
Assignment II | 16 / 16 | 100% |
Extra credits | 2 / 4 | +50% |
Assignment III | 18 / 18 | 100% |
Extra credits | 6 / 8 | +75% |
Assignment IV | 12 / 12 | 100% |
Extra credits | 0 / 4 | +0% |
Assignment V | 10 / 10 | 100% |
Extra credits | 1 / 2 | +50% |
Assignment VI | 0 / 15 | 0% |
Extra credits | 0 / 1 | +0% |