Getting started with iOS programming? Here is a non-exhaustive checklist of some of the most common concepts and techniques you will likely encounter along the way. Think of this as a quick syllabus to get up to speed with the idiomatic features of iOS development.
- Nil safety
- Optionals
- Nil-coalescing operator
guard
statement- Structs vs. classes
- Protocols
- Extensions
- Generics
- Codable
- Result
- Automatic Reference Counting (ARC)
- Functional programming
- UIKit
- UIViewController
- UINavigationController
- UIStackView
- UITableView
- UICollectionView
- UITouch
- Intrinsic content size
- Life cycle methods
- SwiftUI
- Interface Builder
- Auto Layout
- Selectors
- Grand Central Dispatch
- NSOperation
- Combine
- (NS)UserDefaults
- Core Data
- Keychain Services
- File System
- Delegate pattern
- Closures
- Key-Value Observing (KVO)
- NotificationCenter
- Cocoapods
- Swift Package Manager (SPM)
- Carthage