Contents
About the Authors
About the Technical Reviewer
Introduction
Chapter 1: Becoming a Great iOS Developer
Thinking Like a Developer
Completing the Development Cycle
Introducing Object-Oriented Programming
Working with the Playground Interface
Summary
What’s Next
Chapter 2: Programming Basics
Touring Xcode
Exploring the Workspace Window
Navigating Your Workspace
Editing Your Project Files
Creating Your First Swift Playground Program
Installing and Launching Xcode 9
Using Xcode 9
Xcode Playground IDE: Editor and Results Areas
Summary
Chapter 3: It’s All About the Data
Numbering Systems Used in Programming
Bits
Moore’s Law
Bytes
Hexadecimal
Unicode
Data Types
Declaring Constants and Variables
Optionals
Using Variables in Playgrounds
Summary
Chapter 4: Making Decisions, Program Flow, and App Design
Boolean Logic
Truth Tables
Comparison Operators
Designing Apps
Pseudocode
Optionals and Forced Unwrapping
Optional Binding
Implicitly Unwrapped Optionals
Flowcharting
Designing and Flowcharting an Example App
The App’s Design
Using Loops to Repeat Program Statements
Count-Controlled Loops
Condition-Controlled Loops
Infinite Loops
Coding the Example App in Swift
Nested if Statements and else if Statements
Removing Extra Characters
Improving the Code Through Refactoring
Running the App
Design Requirements
Summary
Chapter 5: Object-Oriented Programming with Swift
The Object
What Is a Class?
Planning Classes
Planning Properties
Planning Methods
Implementing the Classes
Inheritance
Why Use OOP?
OOP Is Everywhere
Eliminate Redundant Code
Ease of Debugging
Ease of Replacement
Advanced Topics
Interface
Polymorphism
Value Orientated Programming
Summary
Chapter 6: Learning Swift and Xcode
A Newcomer
Understanding the Language Symbols
Implementing Objects in Swift
Writing Another Program in Xcode
Creating the Project
Summary
Chapter 7: Swift Classes, Objects, and Methods
Creating a Swift Class
Properties
Methods
Using Type Methods
Using Instance Methods
Using Your New Class
Creating Your Project
Adding Objects
Writing the Class
Creating the User Interface
Hooking Up the Code
Running the Program
Taking Type Methods to the Next Level
Accessing the Xcode Documentation
Summary
Chapter 8: Programming Basics in Swift
Using let vs. var
Understanding Collections
Using Arrays
Using the Dictionary Class
Creating the BookStore Application
Creating Your Class
Introducing Properties
Accessing Properties
Finishing the BookStore Program
Creating the View
Adding Properties
Adding a Description
Creating a Simple Data Model Class
Modifying MasterViewController
Modifying the DetailViewController
Summary
Chapter 9: Comparing Data
Revisiting Boolean Logic
Using Relational Operators
Comparing Numbers
Creating an Example Xcode App
Using Boolean Expressions
Comparing Strings
Using the switch Statement
Comparing Dates
Combining Comparisons
Summary
Chapter 10: Creating User Interfaces
Understanding Interface Builder
The Model-View-Controller Pattern
Human Interface Guidelines
Creating an Example iPhone App with Interface Builder
Using Interface Builder
The Document Outline
The Object Library
Inspector Pane and Selector Bar
Creating the View
Using Outlets
Using Actions
The Class
Summary
Chapter 11: Storing Information
Storage Considerations
Preferences/UserDefaults
Writing Preferences
Reading Preferences
Databases
Storing Information in a Database
Getting Started with Core Data
The Model
Managed Object Context
Setting Up the Interface
Summary
Chapter 12: Protocols and Delegates
Multiple Inheritance
Understanding Protocols
Protocol Syntax
Delegation
Protocol and Delegation Example
Getting Started
How It Works
Summary
Chapter 13: Introducing the Xcode Debugger
Getting Started with Debugging
Setting Breakpoints
Using the Breakpoint Navigator
Debugging Basics
Working with the Debugger Controls
Using the Step Controls
Looking at the Thread Window and Call Stack
Debugging Variables
Dealing with Code Errors and Warnings
Errors
Warnings
Summary
Chapter 14: A Swift iPhone App
Let’s Get Started
Switches
Alert Controllers
App Summary
Chapter 15: Apple Watch and WatchKit
Considerations When Creating a watchOS App
Creating an Apple Watch App
Adding More Functionality
Summary
Index
Index
Stay motivated and overcome obstacles while learning to use Swift Playgrounds to be a great iOS developer. This book is perfect for those with no programming background, those with some programming experience but no object-oriented experience, or those that have a great idea for an app but haven’t programmed since school, and it is now updated for Swift 4.
Many people have a difficult time believing they can learn to write iOS apps. Swift 4 for Absolute Beginners will show you how to do so. You'll learn Object Oriented Programming and be introduced to HealthKit before moving on to write your own iPhone and Watch apps from scratch.
Gary Bennett and Brad Lees are full-time professional iOS developers and have developed a broad spectrum of apps for Fortune 500 companies. The authors have taken their combined 14 years of writing apps, teaching online iOS courses, the experience from their first three iOS books, along with their online instruction and free online forum at XcelMe.com to create an excellent training book. And the material in this book is supplemented by with the free, live online training sessions.
Anyone who wants to learn to develop apps for the Mac, iPhone, and iPad, and Watch using the Swift programming language. No previous programming experience is necessary.