iOS Apps for Masterminds
3rd Edition
ISBN: 978-1979949309

How to take advantage of Swift 4 to create insanely great apps for iPhones and iPads

iOS Apps for Masterminds leads the reader step by step to master the complex subjects required to create applications for iPhones and iPads. After reading this book, you will know how to program in Swift, how to design user interfaces, and how to work with the most powerful frameworks available for the construction of modern applications. This book is a complete course that will teach you how to build insanely great applications from scratch...
Table of Contents
Chapter 1 - App Development
1.1 Overview
Requirements
Mobile Operative System
1.2 Xcode
Running Xcode
1.3 Development
Programming Languages
Cocoa Touch API
Compiler
Chapter 2 - Introduction to Swift
2.1 Computer Programs
Playground
2.2 Variables
Memory
Primitive Types
Declaration and Initialization
Arithmetic Operators
Constants
2.3 Data Types
Characters
Strings
Booleans
Optionals
Tuples
2.4 Collections
Arrays
Sets
Dictionaries
2.5 Conditionals and Loops
If and Else
Switch
While and Repeat While
For In
Control Transfer Statements
2.6 Enumerations
Associated Values
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
Methods
Initialization
Property Keywords
Computed Properties
Type Properties and Methods
Primitive Type Structures and Casting
String Structures
Array Structures
Set Structures
Dictionary Structures
Range Structures
3.4 Enumerations
3.5 Objects
Definition of Objects
Property Observers
Type Properties and Methods
Optional Chaining
Reference Types
Memory Management
Inheritance
Type Casting
Any and AnyObject
Initialization
Deinitialization
3.6 Protocols
Definition of Protocols
Extensions
Delegates
Chapter 4 - Frameworks
4.1 iOS SDK
Importing Frameworks
4.2 Foundation
More Standard Functions
Strings
Ranges
Numbers
Dates
Measurements
4.3 Core Graphics
Data Types
4.4 UIKit Frameworks
UIApplication
UIDevice
UIScreen
UIWindow
UIView
UIView Subclasses
UILabel
UIProgressView
UIActivityIndicatorView
UIControl
UIButton
UISegmentedControl
UISwitch
UISlider
UIStepper
Chapter 5 - Building Applications
5.1 The Interface
Xcode Projects
Xcode Tools
Running the Project
5.2 Templates
MVC
Application Delegate
Storyboard
View Controllers
5.3 Interface Builder
Object Library
Guide Lines
Properties
5.4 Connections
Outlets
Connections in the Storyboard
Actions
Outlet Collections
Real-Life Application
Chapter 6 - Adaptivity
6.1 Adaptivity
6.2 Auto Layout
Constraints
Assigning Constraints
Editing Constraints
Safe Area
Standard Values
Resolving Auto Layout Issues
Intrinsic Content Size
Multiple Views Constraints
Relations and Priorities
Stack Views
Document Outline Panel
Constraint Objects
Updating Frames
Real-Life Application
6.3 Size Classes
Adapting Properties
Adapting Constraints
Adapting Elements
Trait Collection Objects
Orientation
Chapter 7 - Text
7.1 Input and Output
Text Field
Text View
7.2 Keyboard
Chapter 8 - Images and Icons
8.1 Images
Images and Image Views
Visual Effects
Assets Catalog
Icons
Launching Image
Chapter 9 - Pickers
9.1 Listing Values
Picker View
Date Picker
Chapter 10 - Timers
10.1 Timer
Chapter 11 - Scrolls Views
11.1 Scroll Views
Scrolling
Zooming
Pages
Scrolling the Interface
Chapter 12 - Gesture Recognizers
12.1 Gestures
Chapter 13 - Navigation
13.1 Multiple View Controllers
Segues
Unwind Segues
Segues in Code
13.2 Navigation Controllers
Navigation Controllers in the Storyboard
Navigation Bar
Items
Toolbar
Custom Navigation
Sharing Data
13.3 Tab Bar Controllers
Tabs
Tab Bar Controller
Tab Bar Controller Delegate
Real-Life Application
Chapter 14 - Table Views
14.1 Tables
Table Views
Table View Cells
Table View Protocols
Index Path
Implementing Table Views
Selection
Sections and Indexes
Custom Cells
14.2 Table Views and Navigation Controllers
Adding Rows
Deleting Rows
Moving Rows
14.3 Table View Controller
Refresh Control
Static Tables
14.4 Search
Search Bar
Chapter 15 - Collection Views
15.1 A Collection of Views
Collection View
Collection View Cells
Collection View Flow Layout
Collection View Protocols
Layout Protocol
Implementing Collection Views
Scroll Direction
Selection
Supplementary Views
Flow Layout
Custom Layout
Real-Life Application
Chapter 16 - Split View Controllers
16.1 Universal Container
Split View Controller
Split View Controller Delegate
Implementing Split View Controllers
16.2 Improving the Interface
Item by Default
Detail View by Default
Display Mode Button
Implementing the Split View Controller Delegate
16.3 Expanding the Interface
Modal Views
Presentation Controller
Popover Presentation Controller
Chapter 17 - Alert Views
17.1 Alert Views
Alerts
Action Sheets
Chapter 18 - Operation Queues
18.1 Operations
Block Operations
Main Queue
18.2 Grand Central Dispatch
Dispatch Framework
Chapter 19 - Notifications
19.1 Notification Center
System Notifications
19.2 User Notifications
User Notifications Framework
19.3 Key/Value Observing
KVC
KVO
Chapter 20 - Error Handling
20.1 Errors
Throwing Errors
Handling Errors
Chapter 21 - Storage
21.1 User Preferences
UserDefaults
21.2 Files
File Manager
URLs and Paths
Files and Directories
Files Attributes
Files Content
Bundle
21.3 Archiving
Encoding and Decoding
Real-Life Application
Chapter 22 - Core Data
22.1 Custom Object Graph
Data Model
Core Data Stack
Managed Object
Managing Objects
Counting Objects
Predicates
Sort Descriptors
Delete Objects
22.2 Fetched Results Controller
Sections
Search
22.3 Migration
Chapter 23 - iCloud
23.1 Data in the Cloud
Enabling iCloud
Testing Devices
23.2 Key-Value Storage
23.3 iCloud Documents
Multiple Documents
23.4 CloudKit
Container
Records
Zones
Query
Operations
CloudKit Dashboard
Implementing CloudKit
References
Assets
Subscriptions
Errors
Deploy to Production
Chapter 24 - Graphics
24.1 Core Graphics
Destination
Context
Paths
Colors
Configuration
Saving the State
Clipping
Gradients
Shadows
Transformations
Text
Images
Drawing Cycle
Image Context
24.2 Core Animation
Layers
3D Transformations
View Animations
Chapter 25 - Media
25.1 Video
Assets
Player Item
Player
Player Layer
Time
Video Player
AVKit Framework
25.2 Audio
Audio Player Delegate
Recording
25.3 Media
Media Controller
Query Media
Chapter 26 - Pictures and Videos
26.1 Image Picker Controller
Camera
Photo Library
Adapting the Controller
Storing Pictures
Modifying Pictures
26.2 Custom Controllers
Camera
Photos
Videos
26.3 Core Image
Chapter 27 - Web
27.1 Links
27.2 Safari View Controller
27.3 WebKit Framework
App Transport Security
27.4 Web Content
JSON
XML
27.5 Social Networks
Activity View Controller
Chapter 28 - Contacts
28.1 Contacts
Reading Contacts
Formatters
Working with Contacts
Contact View Controller
Contact Picker View Controller
Chapter 29 - Sensors
29.1 Core Motion
Motion Device
Motion Activity
Pedometer
Altimeter
29.2 Core Location
Authorization
Getting the Location
Background Location
Region
Geocoding
Chapter 30 - Mapkit
30.1 Map Kit View
Configuring the Map
Annotations
User Location
Search
Directions
Chapter 31 - Internationalization
31.1 Internationalization
Formatters
Languages
Translation
Localized String
Resources
Chapter 32 - App Store
32.1 Publishing
Apple Developer Program
Certificates, Provisioning Profiles, and Identifiers
iTunes Connect
Submitting the Application
Get This Book Now!
iOS Apps for Masterminds
How to take advantage of Swift 4 to create insanely great apps for iPhones and iPads

iOS Apps for Masterminds leads the reader step by step to master the complex subjects required to create applications for iPhones and iPads. After reading this book, you will know how to program in Swift, how to design user interfaces, and how to work with the most powerful frameworks available for the construction of modern applications. This book is a complete course that will teach you how to build insanely great applications from scratch...
Other Books in this Series
HTML5 for Masterminds
How to take advantage of HTML5 to create amazing websites and revolutionary applications

HTML5 for Masterminds leads the reader step by step to gain essential knowledge and to master complex subjects introduced by HTML5. After reading this book, you will know how to structure your documents with HTML, how to style them with CSS and how to work with the most powerful Javascript APIs. This book is not an introduction, but instead a complete course that will teach you how to build compelling websites and amazing web applications from scratch.