Swift Programming for iPhone and iPad Applications


Hands On Technology Transfer, Inc.
In this hands on Swift programming course, attendees will learn how to develop iPhone and iPad applications using the Swift programming language and the Xcode 6 Integrated Development Environment. The course emphasizes safe programming practices and introduces the MVC pattern in detail. Students are familiarized with core APIs including the Foundation and Cocoa Touch frameworks. Students will learn how to utilize Objective-C code in Swift applications in order to take advantage of the rich variety of existing APIs and frameworks. Students will learn how to save and read files for local systems and how to use the Core Data system to create local SQLite databases. Attendees also learn how to develop apps incorporating iCloud support, and the requirements for sharing documents.
Students will learn how to use built-in data views as well as create custom screens for data entry and presentation. The course presents Apple's design recommendations for providing clean interfaces that appropriately size to various devices and screens. The course emphasizes Service Oriented Architecture (SOA), and students learn how iOS apps interact with Web services through request/ response systems. Hands on practice includes implementing code to access a web service asynchronously.
Students will learn how to use the camera and microphone for still images, videos and audio. The course also includes coverage of scheduled background execution to allow code to be run when the app isn't active and to schedule alerts to draw attention back to the app.
Comprehensive hands on exercises are integrated throughout to reinforce learning and develop real competency. Students will create Swift apps from the ground up, demonstrating the features of Swift and its supporting code libraries.
This is primarily ilt training
Course Level:basic
Duration:5 days
Training Presented in:English
Training Provided by Hands On Technology Transfer, Inc.
Swift Programming for iPhone and iPad Applications
Macintosh Programming Environment
  • Versions of iOS and Supported Devices
  • Overview of OS X Versions
  • Command Line Interaction
  • Program Development Tools
  • Apple Approval Process
Xcode IDE Installation and Use
  • Installing and Updating Xcode
  • Using Xcode Templates
  • Code Development and Tracking
  • Debugging Support
  • Visual Analysis Tools
  • Application Navigation Tools
  • Swift Playground
    • Interactive Development and Live Rendering
    • Interactive Graphics Support
  • Performance Testing with XCTest
Swift Language Syntax
  • Fundamental Declarations
  • Object Oriented Programming Support
  • Using Dynamic Binding
  • Writing Code for Hardware Interaction
  • Data Types
    • Type Inference
    • Value Types
    • Enumerations
    • Optional Values and Tuples
    • Algebraic Data Types
    • Collection Types (Arrays and Dictionaries)
    • Generics
  • Flow Control, Loops and Functions
  • String Manipulation & Pattern Matching
  • Using Blocks
    • Purpose and Syntax of Blocks
Object Oriented Programming Constructs
  • Designing Classes
  • Defining Classes in Code
    • Creating Methods within Classes
    • Declaring Parameters and Return Types
    • Writing Initialization Methods
    • Public vs. Private Methods
  • Instantiating and Using Class Objects
  • Using ARC (Automatic Reference Counting)
  • Using Properties within a Class
    • Public vs. Private Properties
    • Initializing Properties
    • Manipulating and Using Properties
Design Patterns and the MVC Application Architecture
  • Common Design Patterns
    • Singleton Pattern
    • Lazy Instantiation
    • Protocol/ Delegate Pattern
  • Model-View-Controller Development Paradigm
  • Application Design Process
  • Core Services Layer
  • Cocoa Touch Layers
  • User Interface Frameworks
Event Handling
  • Event Driven Programming Model
    • Types of Application Events
    • Declaring and Coding Event Handlers
    • Handling Custom Events
    • Handling System Events
GUI Interfaces
  • Using Xcode to Create GUI Interfaces
  • Using Adaptive Views to Adjust for Different Size Devices
  • Creating Views in Storyboard
  • Adding Items to Views
  • Creating Segues for View Transitions
  • Using Live Rendering
  • Using IBDesignable and IBInspectable
Delegates and Protocols
  • Declaring Protocols
  • Implementing Delegate Methods
  • Conforming Classes to Protocols
  • Identifying Delegate Patterns
  • Required vs. Optional Methods
Web Service Support
  • Exploiting Service Oriented Architecture
  • Creating Apps that Use Web Services
  • Advantages of Using RESTful Web Services
  • Using NSURLSession
  • Formatting Data for Transmission Over a Network
  • Apple Push Notification Service (APNs)
  • Apple Media Services
  • Geographical Location Services
Custom View Design and Layout
  • Designing Views
  • Apple's UI Design Standards
  • Utilizing Controls
  • View Navigation
  • Custom View Transitions and Animations
  • Multi-View Application Considerations
Views and View Controllers
  • Using Generic Views and View Controllers
  • Page Views
  • Picker Views
  • Using Specific Purpose Views
    • Text View
    • Web View
    • Map View
  • Table and Table Cell View
Reading and Writing Files
  • Data Persistence Concepts
  • iOS File System Structure
  • Locating an Application's File Space
  • Manipulating Files
    • Locating Files
    • Testing for Existence
    • Creating Files
    • Reading and Writing Files
    • Closing and Saving Files
Using Core Data
  • Core Data Stack
    • The Managed Object Model
    • Managed Object Context
  • Creating a Core Data Application
  • Manipulating Core Data Objects
    • SQLite Library
    • Saving
    • Retrieving
    • Deleting
  • iCloud Data Services
    • iCloud Document and Data Storage
    • Key-Value Data Storage
    • Sharing Data between Applications
Touch Recognition and Gestures
  • Multi-Touch Concepts
  • iOS Recognizable Gestures
  • Recognizing User's Touch Movement
  • Recognizing Touch Release
  • Responding to Users Touch and Gestures
Hardware Camera Use
  • Camera Detection
  • Types of Media
  • Image Capture
  • Image Display Options
  • Saving Images
Audio Systems
  • Recording
  • Playback
  • Streaming
  • AVAudioSession
Compatibility Support
  • Using Swift in Objective-C (Interfacing Protocols)
  • Using Objective-C APIs in Swift
  • Working with Cocoa Data Types and Design Patterns
  • Migrating Objective-C to Swift
  • Importing Objective-C and C APIs into Swift
System Events and Background Execution
  • Application Lifecycle Events
  • Reacting to System Events
  • Methods Declared in the App Delegate
  • Coding Methods in the App Delegate
  • Running Tasks in the Background
About The Training Provider: Hands On Technology Transfer, Inc.
Hands On Technology Transfer, Inc. - Hands On Technology Transfer, Inc. (HOTT) offers competency-based IT training programs in more than 75 cities across the United States, Canada and the United Kingdom, covering over 60 IT subject areas. These programs are designed with one main goal - making sure you and your staff will be competent and productive. Topics include .NET, SQL, Java, Mobile Programming, UNIX/ Linux, HTML5,...
Do you offer application development training?
Custom Search
tcw11-v473M-04/26/15-14:09:40-()[A]-[A]-[A] -08:34:52