Contact Us 978.250.4983

iOS Programming for iPhone® and iPad® Applications Using Objective-C

Duration: 35 hours

Prerequisites: Prior programming experience in an object-oriented language.


Students Will Learn:

  • iOS Overview
  • Using Xcode
  • Objective-C Language Fundamentals
  • Flow Control, Loops, Functions and Main
  • Heap, Stack, Pointers, and the Preprocessor
  • Object Oriented Programming with Objective-C
  • Objective-C Methods and ARC
  • Building iDevice Single View Applications with Xcode
  • MVC Architectures
  • Protocols/Delegates, Notifications and KVC/KVO
  • Forms, Views and ViewControllers
  • NSObjects and other Foundation Classes
  • Dynamic Typing vs Static Typing and Introspection
  • Singleton, Lazy Instantiation and Other Philosophies
  • Exception Handling, Logging and Debugging
  • Working with Threads
  • System Events and Background Execution

Course Description:

Participants in this hands-on course will learn about and gain practice developing iOS applications for iPhone and iPad devices. Attendees will learn all the basics needed for iOS development, from installation of the Xcode editor to the Apple approval process. The Objective-C language is presented and used in hands on exercises to learn how it interacts with the hardware systems.

In hands on exercises, students will use built-in data views as well as create custom screens for data entry and presentation. Students will learn to follow Apple's design recommendations to provide clean interfaces that appropriately size to various devices and screens.

The course 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 apps from the ground up, demonstrating the features of Objective-C and serving as an introduction to developing apps for release to the App Store.


Course Overview:

Macintosh Orientation
  • Versions of iOS and Supported Devices
  • Overview of the New OS X
  • Command Line Interaction
  • Apple Approval Process
Objective-C
  • Fundamental Syntax
  • Object Oriented Programming Support
  • Using Dynamic Binding
  • Using ARC
  • Writing Code for Hardware Interaction
  • Data Types and Structs
  • Flow Control
  • Pointers, Heap and Stack
Xcode IDE Installation and Use
  • Installing and Updating Xcode
  • Code Development and Tracking
  • Debugging Utilities
  • Application Navigation Tools
NeXTStep Object Support
  • Using the NeXTStep Data Types
    • NSDate, NSPoint, NSSize, NSString
  • Using the NeXTStep Collection Objects
    • NSSet and NSMutableSet
    • NSArray and NSMutableArray
    • NSDictionary and NSMutableDictionary
MVC Architecture
  • Model-View-Controller Development Paradigm
  • Application Design Process
System Event Handling
  • Recognizing Apps Moving to Background
  • Detecting and Solving Low Memory Events
  • Handling Custom Events and Exceptions
SOA Application Design Overview
  • Service Oriented Architecture
  • Web Services Overview
  • Apple Push Notification Service (APNs)
Threading Support
  • Creating Threads
  • Using Threads for Asynchronous Processing
Dynamic Typing
  • Understanding the id Data Type
  • Analyzing Objects for Type Safety
  • Testing Objects for Function Support
Basic Design Patterns Used in iOS
  • Singleton Pattern
  • Lazy Instantiation
  • Protocol/Delegate Patterns
Custom View Design and Layout
  • Designing Views
  • Apple's UI Design Standards
  • Utilizing Controls
  • Custom View Transitions and Animations
Views and View Controllers
  • Using Generic Views and View Controllers
  • Using Specific Purpose Views
    • Text View
    • Web View
    • Map View
    • Table and Table Cell View
Blocks
  • Purpose and Syntax of Blocks
  • Block Animation Methods
  • Developing Multithreaded Blocks

Related Bootcamp:

Track Duration Price
Mobile Application Developer 2-course track
3-course track
4-course track
$2,400
$3,600
4,800

iPad® and iPhone® are trademarks of Apple Inc., registered in the U.S. and other countries.

Copyright© Developer Bootcamp