Course 425:
Intermediate iOS Techniques

(5 days)


Course Description

This course covers new topics related to iOS8, as well as giving students experience with more advanced topics in developing apps for the iPad, iPhone, and iPod. Instructors provide lecture and hands-on training with the tools and Objective C to ensure students are able to feel confident and meet the learning objectives. Classroom topics can be customized to your organization.

Learning Objectives

  • Understand modern ObjectiveC
  • Create constraints in the User Interface Layout using Auto Layout
  • Configure storyboard segues and transitions
  • Store documents and settings in iCloud
  • Manage files using UIDocument class
  • Work with databases using Core Data
  • Detect and identify Multitouch and gestures
  • Leverage Collection Views and Flow Layout to create flexible views of data
  • Draw graphics using Quartz 2D and Core Image
  • Utilize Grand Central Dispatch and NSOperation Queue for concurrency
  • Get Location information using Core Location Framework
  • Update Maps using MapKit and the MKMapView class

Who Should Attend

Professional developers who want to further their use of iOS8 and related frameworks.


It is assumed attendees have knowledge of ObjectiveC, and have experience with at least Xcode 4.5, outlets and actions, plists, archiving, table views, and navigation controllers.

Course Outline

Module 1: Review of Recent Changes

  • Default Synthesis
  • Method Ordering
  • Literals

Module 2: Unit Testing

  • Cocoa Touch Unit Testing Bundle
  • Target Options
  • Schemes
  • Setting Up Logic Tests

Module 3: Working with Auto Layout in Interface Builder

  • Alignment Rects
  • Intrinsic Content Size
  • Content Hugging
  • Compression Resistance
  • Creating and Working with Constraints

Module 4: Storyboarding

  • Adding Scenes
  • Configuring Segues and Transitions
  • Passing Data between Scenes
  • Triggering Segue Programmatically

Module 5: iCloud

  • iCloud Document Storage
  • Creating iCloud Enabled App ID
  • Installing iCloud Provisioning Profile
  • iCloud Entitlements File
  • Referencing iCloud Containers
  • iCloud Usage Guidelines
  • Configuring Classes and Running iCloud
  • Synchronizing KeyValue Data

Module 6: UIDocument Class for File Management

  • Overview
  • Implementing Required Methods
  • Document States
  • Conflict Resolution

Module 7: Core Data

  • Understanding Core Data Classes
  • Working with Entities
  • Fetching Objects Based on Criteria

Module 8: Multitouch and Gestures

  • Enabling Multitouch
  • Detecting Gestures
  • Using iOS 6 Gesture Recognizers

Module 9: Collection Views and Flow Layout

  • Working with the Multiple UICollection Classes
  • Scrolling and Swiping

Module 10: Quartz 2D and Core Image

  • Creating a UIView Subclass
  • Forcing a Redraw
  • Points, Coordinates and Pixels
  • Working with Colors
  • Drawing Lines, Paths, Rectangles, Circles, Ellipses
  • Filling Paths with Color

Module 11: Concurrency Programming

  • Designing for Concurrency
  • Using the Core Multithreading API
  • Dispatch Queues and Sources
  • Operation Queues with NSOperationQueue
  • Grand Central Dispatch

Module 12: Core Location and Maps

  • Latitude and Longitude
  • Accuracy
  • Altitude
  • Calculating Distances
  • Forward and Reverse Geocoding
  • Drawing Items on Maps

Please Contact Your ROI Representative to Discuss Course Tailoring!