Table of Contents
The following are all the topics explored in SwiftUI for Masterminds.
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
Scopes
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
CHAPTER 4 — INTRODUCTION TO FRAMEWORKS
4.1 Frameworks
Importing Frameworks
4.2 Foundation
More Standard Functions
Strings
Ranges
Numbers
Dates
Measurements
Timer
4.3 RegexBuilder Framework
Regular Expressions
Regex Builder
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 Previews
Preview Modifiers
Environment
CHAPTER 6 — DECLARATIVE USER INTERFACE
6.1 States
Property Wrappers
@State
@Binding
Binding Structures
@Environment
6.2 Model
@EnvironmentObject
6.3 View Model
6.4 Control Views
Button View
Menus
TextField View
SecureField View
TextEditor View
Toggle View
Slider View
ProgressView View
Stepper View
GroupBox View
6.5 Adaptivity
Size Classes
GeometryReader View
Preferences
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
DatePicker View
7.5 Forms
Form View
Disclosure Group
CHAPTER 8 — NAVIGATION
8.1 Multiple Views
Navigation Stack
Toolbar
Search
Navigation Link
8.2 Modal Views
Sheets
Popovers
Alert Views
Confirmation Dialog
8.3 Tab Views
8.4 Universal Interface
Three-Columns Layout
Configuration
CHAPTER 9 — CONCURRENCY
9.1 Asynchronous and Concurrent Tasks
Tasks
Async and Await
Errors
Concurrency
Actors
Main Actor
Asynchronous Sequences
Task Group
Asynchronous Images
CHAPTER 10 — STORAGE
10.1 User Preferences
App Storage
10.2 Files
URLs and Paths
Files and Directories
File Attributes
File Content
Bundle
Documents
10.3 Archiving
Encoding and Decoding
JSON
10.4 Core Data
Data Model
Core Data Stack
Managed Objects
Fetch Request
Asynchronous Access
Core Data Application
Previews
Sort Descriptors
Predicates
Modifying Objects
Deleting Objects
Custom Fetch Requests
Sections
To-Many Relationships
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
11.6 Image Renderer
11.7 Animations
Animating Custom Shapes
Canvas Animations
Transitions
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 — MAP KIT
13.1 Map View
Annotations
Local Search
User Location
CHAPTER 14 — NOTIFICATIONS
14.1 Notification Center
System Notifications
14.2 User Notifications
User Notifications Framework
Media Attachments
Provisional Notifications
Notifications Delegate
Groups
Summary
Actions
14.3 App States
App Delegates
CHAPTER 15 — ICLOUD
15.1 Data in the Cloud
Enabling iCloud
Testing Devices
15.2 Key-Value Storage
15.3 iCloud Documents
Metadata Query
Single Document
Multiple Documents
15.4 CloudKit
Enabling CloudKit
Implementing CloudKit
Custom Implementation
Records
Zones
Query
Asynchronous Operations
Batch Operations
References
CloudKit Dashboard
Custom CloudKit Application
Assets
Subscriptions
Errors
Deploy to Production
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 — APP STORE
20.1 Publishing
Apple Developer Program
Certificates, Provisioning Profiles, and Identifiers
Icons
Launch Screen
App Store Connect
Submitting the Application