iOS 11 App Development Essentials: Learn to Develop iOS 11 Apps with Xcode 9 and Swift 4 Front Cover

iOS 11 App Development Essentials: Learn to Develop iOS 11 Apps with Xcode 9 and Swift 4

Description

iOS 11 App Development Essentials, the latest edition of this popular book series, has now been fully updated for the iOS 11 SDK, Xcode 9 and the Swift 4 programming language.

This publication is available for purchase in print and Kindle editions. The print edition consists of 100 chapters and includes a free download of the color PDF of the book with 16 additional chapters. The Kindle edition contains all 116 chapters.

Beginning with the basics, this book provides an outline of the steps necessary to set up an iOS development environment. An introduction to the architecture of iOS 11 and programming in Swift 4 is provided, followed by an in-depth look at the design of iOS applications and user interfaces.

More advanced topics such as file handling, database management, graphics drawing and animation are also covered, as are touch screen handling, gesture recognition, multitasking, location management, local notifications, camera access and video playback support. Other features are also covered including Auto Layout, local map search, user interface animation using UIKit dynamics, Siri integration, iMessage app development, CloudKit sharing, biometric authentication, SpriteKit games development and audio to text transcription.

Additional features of iOS development using Xcode are also covered, including Swift playgrounds, universal user interface design using size classes, app extensions, Interface Builder Live Views, embedded frameworks, collection and stack layouts and CloudKit data storage.

The key new features of iOS 11 and Xcode 9 are also covered in detail, including Swift 4, drag and drop integration and the document browser.

The aim of this book, therefore, is to teach you the skills necessary to build your own apps for iOS 11. Assuming you are ready to download the iOS 11 SDK and Xcode 9, have an Intel-based Mac and ideas for some apps to develop, you are ready to get started.

Table of Contents

1. Start Here
2. Joining the Apple Developer Program
3. Installing Xcode 9 and the iOS 11 SDK
4. A Guided Tour of Xcode 9
5. An Introduction to Xcode 9 Playgrounds
6. Swift Data Types, Constants and Variables
7. Swift Operators and Expressions
8. Swift Flow Control
8.3 The repeat … while loop
8.8 Using if … else … Statements
8.9 Using if … else if … Statements
9. The Swift Switch Statement
10. An Overview of Swift 4 Functions, Methods and Closures
11. The Basics of Object-Oriented Programming in Swift
12. An Introduction to Swift Subclassing and Extensions
13. Working with Array and Dictionary Collections in Swift
14. Understanding Error Handling in Swift 4
15. The iOS 11-Application and Development Architecture
16. Creating an Interactive iOS 11 App
17. Understanding iOS 11 Views, Windows and the View Hierarchy
18. An Introduction to Auto Layout in iOS 11
19. Working with iOS 11 Auto Layout Constraints in Interface Builder
20. An iOS 11 Auto Layout Example
21. Implementing iOS 11 Auto Layout Constraints in Code
22. Implementing Cross-Hierarchy Auto Layout Constraints in iOS 11
23. Understanding the iOS 11 Auto Layout Visual Format Language
24. Using Trait Variations to Design Adaptive iOS 11 User Interfaces
25. Using Storyboards in Xcode 9
26. Organizing Scenes over Multiple Storyboard Files
27. Using Xcode 9 Storyboards to Create an iOS 11 Tab Bar Application
28. An Overview of iOS 11 Table Views and Xcode 9 Storyboards
28.2 Static vs. Dynamic Table Views
29. Using Xcode 9 Storyboards to Build Dynamic TableViews
30. Implementing iOS 11 TableView Navigation using Storyboards in Xcode 9
31. Integrating Search using the iOS UISearchController
32. Working with the iOS 11 Stack View Class
33. An iOS 11 Stack View Tutorial
34. An iOS 11 Split View Master-Detail Example
35. A Guide to Multitasking in iOS 11
36. An iOS 11 Multitasking Example
37. Working with Directories in Swift on iOS 11
38. Working with Files in Swift on iOS 11
39. iOS 11 Directory Handling and File I/O in Swift – A Worked Example
40. Preparing an iOS 11 App to use iCloud Storage
41. Managing Files using the iOS 11 UIDocument Class
42. Using iCloud Storage in an iOS 11 Application
43. An Overview of the iOS Document Browser View Controller
44. An iOS Document Browser Tutorial
45. Synchronizing iOS 11 Key-Value Data using iCloud
46. iOS 11 Database Implementation using SQLite
47. An Example SQLite based iOS 11 Application using Swift and FMDB
48. Working with iOS 11 Databases using Core Data
49. An iOS 11 Core Data Tutorial
50. An Introduction to CloudKit Data Storage on iOS 11
51. An Introduction to CloudKit Sharing
52. An iOS 11 CloudKit Example
53. An iOS 11 CloudKit Subscription Example
54. An iOS 11 CloudKit Sharing Example
55. An Overview of iOS 11 Multitouch, Taps and Gestures
56. An Example iOS 11 Touch, Multitouch and Tap Application
57. Detecting iOS 11 Touch Screen Gesture Motions
58. Identifying Gestures using iOS 11 Gesture Recognizers
59. An iOS 11 Gesture Recognition Tutorial
60. A 3D Touch Force Handling Tutorial
61. An iOS 11 3D Touch Quick Actions Tutorial
62. An iOS 11 3D Touch Peek and Pop Tutorial
63. Implementing Touch ID and Face ID Authentication in iOS 11 Apps
64. Drawing iOS 11 2D Graphics with Core Graphics
65. Interface Builder Live Views and iOS 11 Embedded Frameworks
66. An iOS 11 Graphics Tutorial using Core Graphics and Core Image
67. iOS 11 Animation using UIViewPropertyAnimator
68. iOS 11 UIKit Dynamics – An Overview
69. An iOS 11 UIKit Dynamics Tutorial
70. An Overview of iOS Collection View and Flow Layout
71. An iOS 11 Storyboard-based Collection View Tutorial
72. Subclassing and Extending the Collection View Flow Layout
73. An Introduction to Drag and Drop in iOS 11
74. An iOS 11 Drag and Drop Tutorial
75. An iOS 11 Collection View Drag and Drop Tutorial
76. Integrating Maps into iOS 11 Applications using MKMapItem
77. An Example iOS 11 MKMapItem Application
78. Getting Location Information using the iOS 11 Core Location Framework
79. An Example iOS 11 Location Application
80. Working with Maps on iOS 11 with MapKit and the MKMapView Class
81. Working with MapKit Local Search in iOS 11
82. Using MKDirections to get iOS 11 Map Directions and Routes
83. An iOS 11 MapKit Flyover Tutorial
84. Accessing the iOS 11 Camera and Photo Library
85. An Example iOS 11 Camera Application
86. iOS 11 Video Playback using AVPlayer and AVPlayerViewController
87. An iOS 11 Multitasking Picture in Picture Tutorial
88. An Introduction to Extensions in iOS 11
89. An iOS 11 Today Extension Widget Tutorial
90. Creating an iOS 11 Photo Editing Extension
91. Creating an iOS 11 Action Extension
92. Receiving Data from an iOS 11 Action Extension
93. An Introduction to Building iOS 11 Message Apps
94. An iOS 11 Interactive Message App Tutorial
95. An Introduction to SiriKit
96. An iOS 11 Example SiriKit Messaging Extension
97. Customizing the SiriKit Intent User Interface
98. An iOS 11 SiriKit Photo Search Tutorial
99. An iOS 11 Local Notification Tutorial
100. Playing Audio on iOS 11 using AVAudioPlayer
101. Recording Audio on iOS 11 with AVAudioRecorder
102. An iOS 11 Speech Recognition Tutorial
103. An iOS 11 Real-Time Speech Recognition Tutorial
104. iOS 11 Multitasking, Background Transfer Service and Fetching
105. An Overview of iOS 11 Application State Preservation and Restoration
106. An iOS 11 State Preservation and Restoration Tutorial
107. An Introduction to iOS 11 Sprite Kit Programming
108. An iOS 11 Sprite Kit Level Editor Game Tutorial
109. An iOS 11 Sprite Kit Collision Handling Tutorial
110. An iOS 11 Sprite Kit Particle Emitter Tutorial
111. Making Store Purchases with the SKStoreProductViewController Class
112. Building In-App Purchasing into iOS 11 Applications
113. Preparing an iOS 11 Application for In-App Purchases
114. An iOS 11 In-App Purchase Tutorial
115. Configuring and Creating App Store Hosted Content for iOS 11 In-App Purchases
116. Preparing and Submitting an iOS 11 Application to the App Store

To access the link, solve the captcha.