O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

iOS 10 SDK Development, 1st Edition

Book Description

All in on Swift! iOS 10 and Xcode 8 make it clearer than ever that Swift is Apple's language of the future. Core frameworks have been redesigned to work better with Swift, and the language itself continues to evolve quickly. iOS 10 SDK Development is the pure-Swift approach to developing for the iOS platform. This completely revised and updated edition of the bestselling iOS guide shows you how to pull in the SDK's enormous feature set and deliver powerful, real-world apps for iPhone and iPad using modern Swift programming techniques.

Swift is the language of the future for iOS development, and this completely revised and updated book is your guide. From the community-driven changes in Swift 3 to the overhaul of iOS' Foundation framework to make it more "Swifty," iOS 10 and Xcode 8 mark an "all in" commitment to Swift, and this new edition matches that commitment.

Learn not just the syntax of the Swift language but also stylish Swift, the idiomatic uses of the language, and best practices you'll find in the wild. From there, move into developing a complete, real-world podcast client sample application-completely new for this edition-featuring Internet access, tables, navigation, and media playback, all with the most modern approaches provided by Apple's iOS 10 frameworks and tools. Go beyond code to master the practices that professional developers rely on: testing, debugging, publishing on the App Store, and managing your app over the long haul. As a bonus, you'll get a taste of cutting-edge iOS 10 features, such as the new Siri voice-command API.

Swift's time is here. Whether you're new to Swift or just catching up on iOS' latest features, iOS 10 SDK Development will help you master the language and the platform.

Table of Contents

  1.  Acknowledgements
  2.  Preface
    1. About This Edition
    2. So Here’s the Plan
    3. Expectations and Technical Requirements
    4. Online Resources
    5. And Here We Go
  3. 1. Playing with Xcode 8
    1. Tooling Up with Xcode
    2. Messing Around in a Playground
    3. Getting Serious on the Playground
    4. Digging into Documentation
    5. What We’ve Learned
  4. 2. Starting with Swift
    1. The Swift Programming Language
    2. Using Variables and Constants
    3. Counting with Numeric Types
    4. Storing Text in Strings
    5. Packaging Data in Collections
    6. Looping and Branching: Control Flow
    7. Maybe It’s There, Maybe It Isn’t: Optionals
    8. What We’ve Learned
  5. 3. Swift with Style
    1. Creating Classes
    2. Returning Tuples
    3. Building Lightweight Structures
    4. Listing Possibilities with Enumerations
    5. Handling Errors the Swift Way
    6. What We’ve Learned
  6. 4. Building User Interfaces
    1. Creating Our First Project
    2. The Xcode Window
    3. Building Our User Interface
    4. Placing UI Elements with Auto Layout
    5. Adding Images to the UI
    6. What We’ve Learned
  7. 5. Connecting the UI to Code
    1. Connecting Actions
    2. Coding the Action
    3. Connecting Outlets
    4. What We’ve Learned
  8. 6. Testing the App
    1. The Need for Unit Tests
    2. How Tests Work in Xcode
    3. Creating Tests
    4. Testing Asynchronously
    5. User Interface Testing
    6. Running and Testing on the Device
    7. What We’ve Learned
  9. 7. Handling Asynchronicity with Closures
    1. Understanding Closures
    2. Coding with Closures
    3. Care and Feeding of Closures
    4. Grand Central Dispatch
    5. What We’ve Learned
  10. 8. Loading and Parsing Network Data
    1. Fetching Network Data
    2. Mapping XML to Swift Types
    3. Parsing XML
    4. Combining XML Parsers
    5. What We’ve Learned
  11. 9. Presenting Data with Tables
    1. Tables on iOS
    2. Creating Table Views
    3. Customizing Table Appearance
    4. What We’ve Learned
  12. 10. Navigating Through Scenes
    1. Navigation Controllers
    2. Segueing Between Scenes
    3. Modal Segues
    4. What We’ve Learned
  13. 11. Fixing the App When It Breaks
    1. Logging Messages
    2. Taking Control with Breakpoints
    3. Setting Up Your Debugging Environment
    4. What We’ve Learned
  14. 12. Publishing and Maintaining the App
    1. Getting with the Program
    2. Preparing the App for Submission
    3. Uploading the App
    4. Testing with TestFlight
    5. Publishing and Beyond
    6. What We’ve Learned
  15. 13. Taking the Next Step
    1. User Interface
    2. Data Management
    3. Interacting with Other Apps
    4. Media, Graphics, and Gaming
    5. Real-World Interaction
    6. The Low-Level Frameworks
    7. What We’ve Learned
  16.  Bibliography