HOME BOOKS QUICK GUIDES VIDEO COURSES
NEWSLETTER CONTACT
SwiftUI for Masterminds
How to take advantage of SwiftUI to create insanely great apps for iPhones, iPads, and Macs
2nd Edition 2022
ISBN: 978-1-7779782-1-1
Buy Now
There is a new edition of this book available!
Click here for more information.
Table of Contents
The following are all the topics explored in the book 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 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
Collection Difference
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 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
Spacer
Safe Area
Priorities
Alignment Guides
Groups
Generic Views
Custom Views
5.4 Previews
Preview Modifiers
Environment
Development Assets
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
ControlGroup View
6.5 Combine Framework
Publishers
Subscribers
Transforming Values
Operators
Subjects
Combine and SwiftUI
6.6 Adaptivity
Size Classes
GeometryReader View
Preferences
CHAPTER 7 - LISTS
7.1 Lists of Views
ForEach View
ScrollView View
Grids
7.2 List View
Sections
Edit Mode
Swipe Actions
Custom Buttons
Refreshable
Outline List
7.3 Pickers
Picker View
DatePicker View
7.4 Forms
Form View
Disclosure Group
CHAPTER 8 - NAVIGATION
8.1 Multiple Views
NavigationView View
Toolbar
Search
NavigationLink View
8.2 Modal Views
Sheets
Popovers
Alert Views
Confirmation Dialog
8.3 TabView Views
8.4 Universal Interface
Configuration
Three-Columns Layout
CHAPTER 9 - GRAPHICS AND ANIMATIONS
9.1 Shapes
Common Shapes
Gradients
Images
9.2 Paths
Path View
Custom Shapes
9.3 Transformations
9.4 Canvas
9.5 Animations
Animating Custom Shapes
Canvas Animations
Transitions
CHAPTER 10 - CONCURRENCY
10.1 Asynchronous and Concurrent Tasks
Tasks
Async and Await
Errors
Concurrency
Actors
Main Actor
Asynchronous Sequences
Task Group
Asynchronous Images
CHAPTER 11 - GESTURES
11.1 Gesture Recognizers
Gesture Modifiers
Hit Testing
11.2 Gesture Structures
Tap Gesture
Long Press Gesture
Drag Gesture
Drag and Drop Gestures
Magnification Gesture
Rotation Gesture
Composing Gestures
CHAPTER 12 - MAP KIT
12.1 Map View
Annotations
Search
User Location
CHAPTER 13 - STORAGE
13.1 User Preferences
App Storage
13.2 Files
URLs and Paths
Files and Directories
File Attributes
File Content
Documents
Bundle
13.3 Archiving
Encoding and Decoding
JSON
13.4 Core Data
Data Model
Core Data Stack
Managed Objects
Fetch Request
Asynchronous Access
Core Data Application
Previews
Sort Descriptors
Predicates
Delete Objects
Modify Objects
Custom Fetch Requests
Sections
To-Many Relationships
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
Container
Records
Zones
Query
Operations
Batch Operations
References
CloudKit Dashboard
Implementing CloudKit
Assets
Subscriptions
Errors
CloudKit and Core Data
Deploy to Production
CHAPTER 16 - MULTIPLATFORM APPLICATIONS
16.1 Mac Apps
Conditional Code
Menu
Toolbar
Mac Modifiers
Table
Settings
Scene Storage
CHAPTER 17 - FRAMEWORK INTEGRATION
17.1 Integration with UIKit
Representable View
Representable View Controller
CHAPTER 18 - WEB
18.1 Web
Links
Safari View Controller
WebKit Framework
Web Content
CHAPTER 19 - MEDIA
19.1 Pictures
Camera
Storing Pictures
Photo Library
Custom Camera
19.2 Video
Video Player
Custom Video Player
19.3 Color Picker
CHAPTER 20 - APP STORE
20.1 Publishing
Apple Developer Program
Certificates, Provisioning Profiles, and Identifiers
Icons
Launch Screen
App Store Connect
Submitting the Application