Table of Contents
Chapter 1 — App Development
1.1 Overview
Requirements
1.2 Xcode
1.3 Development
Programming Languages
Frameworks and APIs
Compiler
Chapter 2 — Introduction to Swift
2.1 Computer Programming
Playground
2.2 Variables
Memory
Primitive Data Types
Declaration and Initialization
Arithmetic Operators
Constants
2.3 Swift Data Types
Characters
Strings
Booleans
Optionals
Tuples
2.4 Conditionals and Loops
If and Else
Switch
While and Repeat While
For In
Control Transfer Statements
Guard
Chapter 3 — Swift Paradigm
3.1 Programming Paradigms
3.2 Functions
Declaration of Functions
Generic Functions
Standard Functions
Scope
Closures
3.3 Structures
Definition of Structures
Key Paths
Methods
Initialization
Computed Properties
Property Observers
Type Properties and Methods
Generic Structures
Primitive Type Structures
Range Structures
String Structures
Array Structures
Set Structures
Dictionary Structures
3.4 Enumerations
Raw Values
Associated Values
3.5 Objects
Definition of Objects
Type Properties and Methods
Reference Types
Self
Memory Management
Inheritance
Type Casting
Initialization
Deinitialization
Access Control and Modifiers
Singletons
3.6 Protocols
Definition of Protocols
Generic Protocols
Swift Protocols
Extensions
Delegates
3.7 Errors
Throwing Errors
Handling Errors
Results
3.8 Property Wrappers
3.9 Macros
Chapter 4 — Introduction to Frameworks
4.1 Frameworks
Importing Frameworks
4.2 Foundation
More Standard Functions
Strings
Ranges
Numbers
Dates
Measurements
Timer
4.3 Regular Expressions
4.4 Core Graphics
Data Types
Chapter 5 — SwiftUI Framework
5.1 Xcode
Projects
Editor Area
SwiftUI Files
Canvas
Opaque Types
5.2 User Interface
Text View
Modifiers
Color View
Materials
Images
SF Symbols
Event Modifiers
Custom Modifiers
5.3 Layout
Stacks
Safe Area
Priorities
Alignment Guides
Groups
Grids
Custom Views
Custom Layout
Generic Views
5.4 Environment
Chapter 6 — Declarative User Interface
6.1 States
@State
@Binding
Binding Structures
6.2 Control Views
Button View
TextField View
SecureField View
TextEditor View
Toggle View
Slider View
ProgressView View
Stepper View
GroupBox View
6.3 Model
Accessing the Model
Chapter 7 — Lists
7.1 Lists of Views
ForEach View
ScrollView View
Lazy Grids
7.2 List View
Sections
Edit Mode
Swipe Actions
Custom Buttons
Refreshable
Outline List
7.3 Tables
7.4 Pickers
Picker View
Date Picker
7.5 Forms
Form View
Disclosure Group
7.6 Custom Containers
Chapter 8 — Navigation
8.1 Multiple Views
Navigation Stack
Toolbar
Search
Navigation Link
Zoom Transition
8.2 Modal Views
Sheets
Inspector
Popovers
Alert Views
Confirmation Dialog
Tip Views
8.3 Tab Views
Search
Pages
Sidebar
Real-Life Application
8.4 Adaptivity
Size Classes
GeometryReader View
Preferences
8.5 Universal Interface
Three-Columns Layout
Configuration
Chapter 9 — Concurrency
9.1 Asynchronous and Concurrent Tasks
Tasks
Async and Await
Errors
Concurrency
Data Races
Main Actor
Asynchronous Sequences
Task Group
Asynchronous Images
Chapter 10 — Storage
10.1 User Defaults
App Storage
10.2 SwiftData
Model
Container
Context
Implementing SwiftData
Attributes
Relationships
Deleting Objects
Sorting Objects
Filtering Objects
Dynamic Query
Search
Fetching Objects
Previews
Modifying Objects
Images
Sections
Archiving
10.3 CloudKit
Enabling CloudKit
CloudKit Dashboard
Deploy to Production
10.4 Files
URLs and Paths
Files and Directories
Bundle
Documents
Chapter 11 — Graphics and Animations
11.1 Shapes
Common Shapes
Gradients
Effects
Patterns
11.2 Paths
Path View
Custom Shapes
11.3 Transformations
11.4 Canvas
11.5 Charts
Mark Views
Chart Modifiers
Selection
Plot Views
Multiple Marks
Scrolling
11.6 Image Renderer
11.7 Animations
Animating Custom Shapes
Canvas Animations
Transitions
Animating SF Symbols
Chapter 12 — Gestures
12.1 Gesture Recognizers
Gesture Modifiers
Hit Testing
12.2 Gesture Structures
Tap Gesture
Long Press Gesture
Magnification Gesture
Rotation Gesture
Drag and Drop Gesture
Chapter 13 — MapKit Framework
13.1 Map View
Camera
Map Content
Search
Selection
Controls
Look Around
Directions
User Location
Chapter 14 — Notifications
14.1 Notification Center
System Notifications
14.2 User Notifications
User Notifications Framework
Media Attachments
Notifications Delegate
Groups
Summary
Actions
14.3 Key/Value Observing
14.4 App States
App Delegates
14.5 Combine Framework
Publishers
Subjects
Integrated Publishers
Chapter 15 — iCloud
15.1 Data in the Cloud
15.2 Key-Value Storage
15.3 iCloud Documents
Metadata Query
Single Document
Multiple Documents
Chapter 16 — Framework Integration
16.1 Integration with UIKit
Representable View
Representable View Controller
Chapter 17 — Web
17.1 Web
Links
Safari View Controller
WebKit Framework
Web Content
Chapter 18 — Media
18.1 Pictures
Photos Picker
Camera
Storing Pictures
Share Link
Custom Camera
18.2 Video
Video Player
Custom Video Player
18.3 Color Picker
Chapter 19 — Multiplatform Applications
19.1 Mac Apps
Conditional Code
Menu
Toolbar
Mac Modifiers
Scenes
Scene Storage
Chapter 20 — Internationalization
20.1 Localization
String Catalogs
Chapter 21 — App Store
21.1 Publishing
Apple Developer Program
Certificates, Provisioning Profiles, and Identifiers
Icons
Launch Screen
App Store Connect
Submitting the Application