iOS is Apple's mobile operating system powering iPhone, iPad, and iPod Touch, providing developers with frameworks like UIKit and SwiftUI to build native applications using Swift or Objective-C. Modern iOS development centers on declarative UI with SwiftUI, the Observation framework (@Observable) for lightweight state management, async/await structured concurrency, and Swift Package Manager for dependencies, while UIKit remains essential for complex custom interfaces and backward compatibility. Understanding iOS means mastering the entire Apple ecosystem: app lifecycle management, memory handling through ARC, design patterns like MVVM, integration with platform services, and Swift 6's strict concurrency model built around Sendable and actor isolation.
What This Cheat Sheet Covers
This topic spans 25 focused tables and 216 indexed concepts. Below is a complete table-by-table outline of this topic, spanning foundational concepts through advanced details.
Table 1: UI Frameworks
| Framework | Example | Description |
|---|---|---|
struct ContentView: View { var body: some View { Text("Hello") }} | β’ Declarative UI framework (iOS 13+) β’ Swift-only syntax with automatic state updates and cross-platform support across all Apple devices. | |
class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() }} | β’ Imperative, event-driven framework using view controllers β’ provides fine-grained control for complex interactions and broad backward compatibility. | |
NavigationStack(path: $path) { List { NavigationLink("Detail", value: item) } .navigationDestination(for: Item.self) { ... }} | β’ SwiftUI's modern navigation (iOS 16+) β’ type-safe, programmatic routing with value-based navigation and state-driven paths. | |
NavigationSplitView { SidebarView()} detail: { DetailView()} | β’ SwiftUI multi-column layout (iOS 16+) for iPad and large screens β’ automatically collapses to NavigationStack in compact size classes. | |
let navController = UINavigationController(rootViewController: vc)navController.pushViewController(nextVC, animated: true) | UIKit container managing a stack-based navigation hierarchy with back/forward navigation and a navigation bar. |