Swift iOS Programming: 24-Hour Trainer, Book + Videos

Author : Abhishek Mishra
Price : Rs 799.00
ISBN 13 : 9788126559886
ISBN 10 : 8126559888
Pages : 624
Type : Paperbound

9788126559886

Details

This book and online video package is a self-paced guide to Swift programming. Easy-to-follow lessons, reinforced by step-by-step instructions, screencasts, and supplemental exercises, allow readers of all learning styles to master Swift programming quickly and painlessly. The book starts at the very beginning, assuming you have little or no programming experience. The book is divided into lessons that teach a specific concept or technique, and then invites you to "Try It", by performing a programming exercise to solidify the lesson's ideas. 

 

Introduction

 

Section I: Hello iOS!

 

Lesson 1: Hello iOS!

  • iOS Developer Essentials  
  • A Suitable Mac
  • A Device for Testing
  • An iOS Developer Account
  • The Official iOS SDK
  • The Typical App Development Process  
  • Wireframes and Design  
  • Coding
  • Testing
  • Home Screen Icon
  • Application Launch Image
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 2: A Tour of Xcode and The iOS Simulator

  • The Welcome Screen
  • Creating a New Project
  • An Overview of the Xcode IDE
  • The Navigator Area
  • The Editor Area
  • The Utilities Area
  • The Debugger Area
  • The Toolbar
  • Features of the iOS Simulator
  • Installing and Uninstalling Applications
  • Limitations of the iOS Simulator
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 3: Introducing Swift

  • Introducing XCode Playgrounds
  • Constants and Variables
  • Data Types
  • Comments
  • Strings
  • Tuples
  • Optionals
  • Control Flow Statements
  • if-else
  • switch-case
  • Loops
  • Control Transfer Statements
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 4: Functions

  • Declaring Functions
  • Parameters and Return Values
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 5: Closures

  • Function Types
  • Closure Types
  • Global Closures
  • Nested Closures
  • Closure Expressions
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 6: Error Handling

  • The Error Type Protocol
  • Throwing and Catching Errors
  • Suppressing Error Handling
  • The defer Statement
  • Try It
  • Lesson Requirements
  • Hints
  • Step by Step

 

Lesson 7: Object-Oriented Programming with Swift

  • Creating Classes with Swift
  • Properties
  • Methods
  • Instantiating Objects
  • Inheritance
  • Computed Properties
  • Enumerations
  • Protocols
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 8: Supporting Multiple Device Types

  • Device Differences
  • Screen Size
  • Icon Size
  • Device Orientation
  • The Universal XCode Template
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 9: Introduction to Uikit and Adaptive Layout

  • Introducing the UIKit Framework
  • The UIButton Class
  • The UILabel Class  
  • Basic Constraints
  • Previewing Your Layout
  • Creating Outlets
  • Creating Actions
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 10: Introduction to Storyboards

  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Section II: More iOS Development

Lesson 11: Handling user Input

  • Text Fields
  • Text Views  
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 12: Alert Views and Action Sheets

  • Alert Views
  • Action Sheets  
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 13: Adding Images to Your View

  • The UIImage Class
  • The UIImage View Class
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 14: Pickers

  • Date Pickers
  • Custom Pickers
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 15: Navigation Controllers

  • Adding a Navigation Controller to a Storyboard
  • The Navigation Controller Interface
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 16: Table Views

  • Table View Appearance
  • Creating a Table View with Interface Builder
  • Static Table Views
  • Dynamic Table Views
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 17: Collection Views

  • Creating a Collection View with Interface Builder
  • Collection View Cells
  • Collection View Delegate and Data Source
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 18: Tab Bars and Toolbars

  • Creating a Tab Bar Controller
  • Toolbars
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 19: Creating views that Scroll

  • The UIScrollView Class
  • Scroll Views and Text Fields
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 20: Popovers and Modal Views

  • Popovers
  • Modal Views
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 21: Touches and Gestures

  • Touch Events
  • Gesture Recognizers
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Section III: Storing Data and Network Programming

Lesson 22: Property Lists

  • Creating Property Lists
  • Reading Property Lists
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 23: Application Settings

  • Adding a Settings Bundle
  • Reading Preferences with Code
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 24: Introduction to iCloud Storage

  • Basic Concepts
  • Preparing to Use the iCloud Storage APIs
  • Creating an iCloud-Enabled App ID
  • Creating an Appropriate Provisioning Profile
  • Enabling Appropriate Entitlements in Your Xcode Project
  • Checking for Service Availability
  • Using iCloud Document Storage
  • Creating a New iCloud Document
  • Opening an Existing Document
  • Saving a Document
  • Searching for Documents on iCloud
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 25: Introduction to Cloud kit

  • Containers, Databases and Records
  • Development and Production Environments
  • The Cloud Kit Dashboard
  • Creating a Record Type
  • Deleting a Record Type
  • Creating Relationships Between Record Types
  • Adding Records
  • Modifying and Deleting Records
  • Resetting the Development Schema
  • Deploying to Production
  • Preparing to Use Cloud Kit
  • Create an iCloud-Enabled App ID
  • Create an Appropriate Provisioning Profile
  • Enable Appropriate Entitlements in Your Xcode Project
  • Common Operations
  • Checking for Service Availability
  • Creating Records Programmatically
  • Retrieving Records
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 26: Introduction to Core Data

  • Basic Concepts
  • Managed Object
  • Managed Object Context
  • Persistent Store Coordinator
  • Entity Description
  • Managed Object Model
  • Adding Core Data to a Project
  • Instantiating Core Data Objects
  • Writing Managed Objects
  • Reading Managed Objects
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 27: Consuming Restful JSON Web Services

  • Types of Web Services
  • RESTful Web Services
  • SOAP Web Services
  • JSON and NSJSONSerialization
  • NSURLSession and Application Transport Security
  • Creating an NSURLSession
  • Creating a Data Task
  • Application Transport Security
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Section IV: Beyond The Basics

Lesson 28: Social Media Integration

  • The Share Sheet
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 29: Where Am I? Introducing Core Location

  • Permissions
  • Accuracy
  • Receiving Location Updates
  • Handling Errors and Checking Hardware Availability
  • Geocoding and Reverse Geocoding
  • Obtaining Compass Headings
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 30: Introduction to Map Kit

  • Adding Annotations
  • Accessory Views
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 31: Using The Camera and Photo Library

  • Selecting the Image Source
  • Presenting the Image Picker
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 32: Introduction to User Interface Testing

  • Adding Support for UI Testing to Your Project
  • Anatomy of a Test Case
  • New Classes for UI Testing
  • XCUIApplication
  • XCUIDevice
  • XCUIElementQuery
  • XCUIElement
  • XCUIElementAttributes
  • XCUIElementTypeQueryProvider
  • Test Assertions
  • UI Recording
  • Waiting for Elements in a UI Test
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Lesson 33: Introduction to Test Driven Development

  • Adding Support for Unit Testing to Your Project
  • TDD Techniques
  • Test First
  • Red-Green-Refactor
  • Don't Write Code You Do Not Yet Need
  • Anatomy of a Test Case
  • Test Assertions
  • Try It
  • Lesson Requirements
  • Hints
  • Step-by-Step

 

Section V: Reference

Appendix A: Testing Your App On A Device

Appendix B: Beta Testing With Test flight

Appendix C: App Store Distribution 553

 

Index

Primary audience: Individuals with little or no prior programming experience who want to pursue a career in iOS programming.

 

Secondary audience: Seasoned iOS developers who want to quickly found out how Objective-C concepts translate to Swift.

 

Abhishek Mishra has been developing software for over 15 years with a diverse set of programming languages and platforms. He is a mobile applications consultant specializing in iOS development and training. He teaches iPhone / iPad programming and writes about iPhone / iPad development for several websites, including idevmag.com.