Mastering iOS 11 Programming - Second Edition

Transition to a Professional iOS developer with the most in-depth and advanced level guide on Swift 4 and Xcode 9
Preview in Mapt

Mastering iOS 11 Programming - Second Edition

Donny Wals

2 customer reviews
Transition to a Professional iOS developer with the most in-depth and advanced level guide on Swift 4 and Xcode 9

Quick links: > What will you learn?> Table of content> Product reviews

Mapt Subscription
FREE
$29.99/m after trial
eBook
$25.20
RRP $35.99
Save 29%
Print + eBook
$44.99
RRP $44.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$25.20
$44.99
$29.99 p/m after trial
RRP $35.99
RRP $44.99
Subscription
eBook
Print + eBook
Start 14 Day Trial

Frequently bought together


Mastering iOS 11 Programming - Second Edition Book Cover
Mastering iOS 11 Programming - Second Edition
$ 35.99
$ 25.20
Mastering Swift 4 - Fourth Edition Book Cover
Mastering Swift 4 - Fourth Edition
$ 35.99
$ 25.20
Buy 2 for $35.00
Save $36.98
Add to Cart

Book Details

ISBN 139781788398237
Paperback570 pages

Book Description

With good pay for iOS developers, a mature development environment, and Apple users spending more money on the App store than Android users, becoming a professional iOS developer is a great move.

The journey to master iOS development and the new features of iOS 11 is not straightforward, but this book will help you make that transition.

Written for Swift 4 and following the latest Swift API design guidelines, you won’t just learn how to program for iOS 11, you’ll learn how to write great, readable, and maintainable Swift code that’s in line with the industry’s best-practices.

The progression of this book reflects the real-world development flow. In the book, you will build real-world applications. You will find a mix of thorough background information and practical examples, so you’ll know how to make use of a technique right away while you also get a great understanding of the how and why.

By the end, you will be able to build iOS applications that harness advanced techniques and make the best use of the latest and greatest features available in iOS 11.

Table of Contents

Chapter 1: UITableView Touch Up
Setting up the user interface (UI)
Fetching a user's contacts
Creating a custom UITableViewCell for our contacts
Displaying the list of contacts
Under the hood of UITableView performance
UITableViewDelegate and interactions
Summary
Chapter 2: A Better Layout with UICollectionView
Converting from a UITableView to UICollectionView
Creating and implementing a custom UICollectionViewCell
Understanding the UICollectionViewFlowLayout and its delegate
Creating a custom UICollectionViewLayout
UICollectionView performance
User interactions with UICollectionView
Summary
Chapter 3: Creating a Contact Details Page
Universal applications
Implementing navigation with segues
Creating adaptive layouts with Auto Layout
Easier layouts with UIStackView
Passing data between view controllers
Previewing content using 3D Touch
Summary
Chapter 4: Immersing Your Users with Animation
Refactoring existing animations with UIViewPropertyAnimator
Understanding and controlling animation progress
Adding vibrancy to animations
Adding dynamism with UIKit Dynamics
Customizing view controller transitions
Summary
Chapter 5: Improving Your Code with Value Types
Understanding reference types
Understanding value types
Using structs to improve your code
Containing information in enums
Summary
Chapter 6: Making Your Code More Flexible with Protocols and Generics
Defining your own protocols
Checking for traits instead of types
Summary
Chapter 7: Refactoring the HelloContacts Application
Properly separating concerns
Adding protocols for clarity
Summary
Chapter 8: Adding Core Data to Your App
Understanding the Core Data stack
Adding Core Data to an application
Summary
Chapter 9: Storing and Querying Data in Core Data
Storing data with Core Data
Reading data with a simple fetch request
Filtering data with predicates
Reacting to database changes
Understanding the use of multiple NSManagedObjectContexts
Summary
Chapter 10: Fetching and Displaying Data from the Network
Fetching data from the web
Working with JSON in Swift
Updating Core Data objects with fetched data
Wrapping the features up
Summary
Chapter 11: Being Proactive with Background Fetch
Understanding how background fetch works
Implementing the prerequisites for background fetch
Updating movies in the background
Updating movies in the background
Summary
Chapter 12: Enriching Apps with the Camera, Motion, and Location
Accessing and using the camera the simple way
Implementing CoreMotion
Using CoreLocation to locate your users
Finishing the ArtApp login screen
Summary
Chapter 13: Extending the World with ARKit
Understanding how ARKit works
Exploring SpriteKit
Implementing an Augmented Reality gallery
Summary
Chapter 14: Exchanging Data with Drag and Drop
Understanding the drag and drop experience
Implementing basic drag and drop functionality
Customizing the drag and drop experience
Summary
Chapter 15: Making Smarter Apps with CoreML
Understanding what machine learning is
Understanding CoreML
Combining CoreML and computer vision
Summary
Chapter 16: Increasing Your App's Discoverability with Spotlight and Universal Links
Understanding Spotlight search
Adding your app contents to the Spotlight index
Increasing your app's visibility with Universal Links
Summary
Chapter 17: Instant Information with a Notification Center Widget
Understanding the anatomy of a Today Extension
Adding a Today Extension to your app
Sharing data with App Groups
Summary
Chapter 18: Implementing Rich Notifications
Gaining a deep understanding of notifications
Scheduling and handling notifications
Implementing Notification Extensions
Summary
Chapter 19: Extending iMessage 
Understanding iMessage apps
Creating an iMessage sticker pack
Implementing custom, interactive iMessage apps
Understanding sessions, messages, and conversations
Summary
Chapter 20: Integrating Your App with Siri
Understanding intents and vocabularies
Adding intents to your extension
Adding a custom UI to Siri
Summary
Chapter 21: Ensuring App Quality with Tests
Testing logic with XCTest
Gaining insights through code coverage.
Testing the user interface with XCUITest
Summary
Chapter 22: Discovering Bottlenecks with Instruments
Exploring the Instruments suite
Discovering slow code
Closing memory leaks
Summary
Chapter 23: Offloading Tasks with Operations and GCD
Writing asynchronous code
Creating reusable tasks with Operations
Summary
Chapter 24: Wrapping Up the Development Cycle and Submitting to the App Store
Adding your application to iTunes Connect
Packaging and uploading your app for beta testing
Preparing your app for launch
Summary

What You Will Learn

  • Build a professional iOS application from scratch
  • Create adaptive, complex views with Auto-Layout
  • Writing flexible and reusable code with Protocol Oriented programming
  • Ensure code quality by using proper tests.
  • Measure and improve performance with the Instruments app
  • Integrate with iOS on a deep level with several App Extensions
  • Implement AI, Machine Learning, Augmented Reality and more iOS 11 sweetness

Authors

Table of Contents

Chapter 1: UITableView Touch Up
Setting up the user interface (UI)
Fetching a user's contacts
Creating a custom UITableViewCell for our contacts
Displaying the list of contacts
Under the hood of UITableView performance
UITableViewDelegate and interactions
Summary
Chapter 2: A Better Layout with UICollectionView
Converting from a UITableView to UICollectionView
Creating and implementing a custom UICollectionViewCell
Understanding the UICollectionViewFlowLayout and its delegate
Creating a custom UICollectionViewLayout
UICollectionView performance
User interactions with UICollectionView
Summary
Chapter 3: Creating a Contact Details Page
Universal applications
Implementing navigation with segues
Creating adaptive layouts with Auto Layout
Easier layouts with UIStackView
Passing data between view controllers
Previewing content using 3D Touch
Summary
Chapter 4: Immersing Your Users with Animation
Refactoring existing animations with UIViewPropertyAnimator
Understanding and controlling animation progress
Adding vibrancy to animations
Adding dynamism with UIKit Dynamics
Customizing view controller transitions
Summary
Chapter 5: Improving Your Code with Value Types
Understanding reference types
Understanding value types
Using structs to improve your code
Containing information in enums
Summary
Chapter 6: Making Your Code More Flexible with Protocols and Generics
Defining your own protocols
Checking for traits instead of types
Summary
Chapter 7: Refactoring the HelloContacts Application
Properly separating concerns
Adding protocols for clarity
Summary
Chapter 8: Adding Core Data to Your App
Understanding the Core Data stack
Adding Core Data to an application
Summary
Chapter 9: Storing and Querying Data in Core Data
Storing data with Core Data
Reading data with a simple fetch request
Filtering data with predicates
Reacting to database changes
Understanding the use of multiple NSManagedObjectContexts
Summary
Chapter 10: Fetching and Displaying Data from the Network
Fetching data from the web
Working with JSON in Swift
Updating Core Data objects with fetched data
Wrapping the features up
Summary
Chapter 11: Being Proactive with Background Fetch
Understanding how background fetch works
Implementing the prerequisites for background fetch
Updating movies in the background
Updating movies in the background
Summary
Chapter 12: Enriching Apps with the Camera, Motion, and Location
Accessing and using the camera the simple way
Implementing CoreMotion
Using CoreLocation to locate your users
Finishing the ArtApp login screen
Summary
Chapter 13: Extending the World with ARKit
Understanding how ARKit works
Exploring SpriteKit
Implementing an Augmented Reality gallery
Summary
Chapter 14: Exchanging Data with Drag and Drop
Understanding the drag and drop experience
Implementing basic drag and drop functionality
Customizing the drag and drop experience
Summary
Chapter 15: Making Smarter Apps with CoreML
Understanding what machine learning is
Understanding CoreML
Combining CoreML and computer vision
Summary
Chapter 16: Increasing Your App's Discoverability with Spotlight and Universal Links
Understanding Spotlight search
Adding your app contents to the Spotlight index
Increasing your app's visibility with Universal Links
Summary
Chapter 17: Instant Information with a Notification Center Widget
Understanding the anatomy of a Today Extension
Adding a Today Extension to your app
Sharing data with App Groups
Summary
Chapter 18: Implementing Rich Notifications
Gaining a deep understanding of notifications
Scheduling and handling notifications
Implementing Notification Extensions
Summary
Chapter 19: Extending iMessage 
Understanding iMessage apps
Creating an iMessage sticker pack
Implementing custom, interactive iMessage apps
Understanding sessions, messages, and conversations
Summary
Chapter 20: Integrating Your App with Siri
Understanding intents and vocabularies
Adding intents to your extension
Adding a custom UI to Siri
Summary
Chapter 21: Ensuring App Quality with Tests
Testing logic with XCTest
Gaining insights through code coverage.
Testing the user interface with XCUITest
Summary
Chapter 22: Discovering Bottlenecks with Instruments
Exploring the Instruments suite
Discovering slow code
Closing memory leaks
Summary
Chapter 23: Offloading Tasks with Operations and GCD
Writing asynchronous code
Creating reusable tasks with Operations
Summary
Chapter 24: Wrapping Up the Development Cycle and Submitting to the App Store
Adding your application to iTunes Connect
Packaging and uploading your app for beta testing
Preparing your app for launch
Summary

Book Details

ISBN 139781788398237
Paperback570 pages
Read More
From 2 reviews

Read More Reviews

Recommended for You

Mastering Swift 4 - Fourth Edition Book Cover
Mastering Swift 4 - Fourth Edition
$ 35.99
$ 25.20
Test-Driven iOS Development with Swift 4 - Third Edition Book Cover
Test-Driven iOS Development with Swift 4 - Third Edition
$ 31.99
$ 22.40
Understanding Software Book Cover
Understanding Software
$ 23.99
$ 16.80
Swift 4 Protocol-Oriented Programming - Third Edition Book Cover
Swift 4 Protocol-Oriented Programming - Third Edition
$ 31.99
$ 22.40
Learning Microsoft Cognitive Services - Second Edition Book Cover
Learning Microsoft Cognitive Services - Second Edition
$ 35.99
$ 25.20
iOS 11 Programming with SWIFT [Video] Book Cover
iOS 11 Programming with SWIFT [Video]
$ 124.99
$ 106.25