Mobile App Development // IOS300

Introduction to iPhone and iPad Application Development using iOS8 and Xcode 6

Application Development for iPhone / iPad.  Learn how to build Apple mobile apps in this programming course using iOS8, SDK, Objective C and Xcode 6

Course Description

Building successful iPhone and iPad applications requires that developers understand the requirements from Apple for designing and building applications, as well as how to use the technologies involved. This course covers all topics from design, to development and deployment. This course provides lecture and hands-on training with the tools and Objective C to ensure students are able to create applications that adhere to Apple guidelines.  Classroom topics can be customized to your organization.


This course is intended for professional developers who want to be begin creating applications for iPhone and iPad


Before attending this course, students must be an experienced software developer.
Experience with object-oriented programming is helpful but not required.


After attending this course, students will be able to:

  • Understand the background and overall structure of iOS
  • How to navigate and use the tools of the iOS SDK
  • Running Cocoa Touch Applications in a simulator
  • Understand structure of Objective-C 2.0
  • Navigate and understand Xcode including its integrated Interface Builder
  • Respond to touch events
  • Set up and manage iOS controls such as text fields, buttons, and pickers.
  • Work with table views, navigation controllers, and other UI components
  • Persist user data and application state


1. Getting Started with iOS development
Types of Apps

  • iPhone, iPad, iPod Touch, Universal
  • Immersive Apps (Games, custom interfaces)
  • Productivity Apps
  • Utility Apps

Strategies in Designing Apps

  • Researching competition
  • Pricing Methods
  • Advertising

iOS Human Interface Guidelines

  • Overview
  • Highlights of HIG

Setting Up Your Environment

  • Registering with Apple
  • Join an iOS Developer Program
  • Downloading the SDK

2. Anatomy of a Project
Xcode - the IDE for Creating Apps

  • Create New Project
  • Single View
  • Tabbed Application
  • Utility Application
  • Edit, Maintain, Prepare Files
  • Window Panes, View, Library, Inspector Toolbar
  • Designing the User Interface
  • Connecting objects

iOS Simulator    

  • Run applications without device
  • Test UI
  • Hardware Interactions
  • Shake, rotate left/right
  • Home, Lock, tv out
  • Gestures


  • Running applications
  • Breakpoints

3. Programming Basics


  • Syntax
  • Objects
  • Classes
  • Header and implementation files
  • #import, @implementation, @synthesize
  • @property
  • getters / setters
  • alloc, init
  • Instances
  • Sending Messages / calling methods

4. Memory Management

Memory Management

  • Overview
  • Reference Counting
  • Release

5. Design Patterns

Cocoa Touch

Exploring Frameworks

  • UIKit framework
  • Foundation Framework, NS-prefix
  • CL-prefix

View controller



6. View Controllers and Views

Configuring the View

  • Add UI Elements
  • Add Actions
  • Create and Connect Outlets using Xcode and by code

Implement the View Controller

  • Implement methods
  • Configure view controller as delegate

7. Working with Data

Data Options

  • Property Lists
  • SQLite
  • Core Data
  • Object Archives
  • iCloud

Table Views

  • Plain and Grouped Tables
  • Populating with Data

8. Navigation Controllers


  • Tab Bars
  • Drill down

9. Camera


  • Checking Device
  • Testing with Simulator

10. Core Location and Map

Core Location

  • Latitude and Longitude
  • GPS
  • Cell Tower triangulation
  • Wi-Fi positioning service


  • Displays map
  • Network connection

11.Web Services

Fetching Data

  • NSURLRequest
  • NSURLConnection

12. Unit Testing

Cocoa Touch Unit Testing Bundle

  • Target Options
  • Schemes
  • Setting up logic

13. Distributing Applications


  • Publish for Testing
  • Publish to App Store