back to all classes
Class Icon
Beginning iOS (iPhone/iPad)

If you're a novice developer who wants to write applications that run on the iPhone or iPad, you should attend the Beginning iOS Bootcamp.

The first two days of the course are devoted to learning Objective-C, followed by our five-day iOS Bootcamp. In 7 challenging days, Beginning iOS Bootcamp will take you from complete novice to being able to build your first iPhone application. In addition, you'll become an active participant in the iPhone programming community, allowing you to continue learning upon completion of the class.

After an introduction to the Objective-C language and the Foundation framework, we delve into the toolchain and the classes that make up the iPhone UI framework. We deal with drawing using Core Graphics and Core Animation. We also discuss issues in the multi-touch event handling.

We can teach this course at your company site. We have taught it for Cisco, AT+T, SAS, and other smaller companies.

UPCOMING CLASSES

Date Instructor Price Status Venue
Jun 8 -
Jun 14
Campbell

$4950
Register Now!
2 Spaces Left!
Register - Last Chance
Atlanta, Georgia
Jun 8 -
Jun 14
Kerimbaev

€3700
Register Now!
Register
Epe, The Netherlands
Jun 22 -
Jun 28
Keur
Preble
$4950
Wait List!
Sold Out
Register - Last Chance
Atlanta, Georgia
Jun 29 -
Jul 5
Kerimbaev

€3700
Register Now!
Register
Epe, The Netherlands
Jul 6 -
Jul 12
Campbell

$4950
Register Now!
Register
Atlanta, Georgia
Jul 13 -
Jul 19
Ritchie

$4950
Register Now!
1 Space Left!
Register - Last Chance
BNR West, California
Aug 24 -
Aug 30
Usiyan

$4950
Register Now!
Register
BNR West, California
Sep 21 -
Sep 27
Kerimbaev

€3700
Register Now!
Register
Epe, The Netherlands
Sep 21 -
Sep 27
Ritchie

$4950
Register Now!
Register
BNR West, California
Oct 19 -
Oct 25
Ward

$4950
Register Now!
Register
BNR West, California
Dec 14 -
Dec 20
Campbell

$4950
Register Now!
Register
BNR West, California
What You’ll Learn

Upon completion of Beginning iOS (iPhone/iPad), the student will be able to:

  • Understand classes, objects, and methods
  • Write a first program in Objective-C
  • Define classes and write instance and class methods
  • Use inheritance
  • Take advantage of polymorphism and dynamic typing
  • Work with the preprocessor
  • Utilize underlying C features
  • Use the basic Foundation classes (numbers, arrays, dictionaries, sets, etc.)
  • Properly manage memory using ARC while preventing memory leaks and retain cycles
  • Demonstrate fluency in Objective-C
  • Set up elegant user interfaces easily, using Interface Builder and in code
  • Set up text input fields on the iPhone and move the virtual keyboard onto the screen
  • Create applications that use Location Services to pinpoint a user's location
  • Localize applications for international use
  • Swap out different interfaces (views) with animation
  • Display editable tables of data
  • Create applications that can play back a variety of audio and video file formats
  • Handle warnings from the phone so applications don't get shut down
  • Handle touch and complex multi-touch sequences
  • Draw with Core Graphics
  • Animate user interfaces with Core Animation
  • Pull data from a web service for use in an application
  • Create an application that can access the user's photos or use the camera to take new photos for use within the application
  • Maintain a preference file for an application
  • Use the Instruments tool to profile an application's resource usage for performance
  • Store data on the device using multiple techniques
  • Properly configure your user interface to handle multiple device orientations and device rotation
  • Synchronize data with Apple's iCloud service
  • Architect large applications with many sources of data and interfaces

Beginning iOS (iPhone/iPad) SYLLABUS

Section Contents
Open ArrowOpen Objective-C
Why am I here?
An introduction to the instructor, Objective-C, and the course contents.
Classes and Objects
A brief introduction to the concepts of OOP programming.
Messages and Methods
How work gets done in an Objective-C program.
NSString
Work with strings.
Constants
Using #define and global variables
Preprocessor
Understand what can be done by the preprocessor.
Your First Class
Writing your own classes.
Inheritance
The root. Extension through inheritance. Overriding methods.
retain and release
Introduction to Memory Management.
NSAutoreleasePool
Understand the autorelease stack.
Collection Classes
Arrays, dictionaries, and sets.
Writing files
NSString and NSData.
Callbacks
A brief introduction to target-action, helper objects, anf notifications.
Protocols
Required and optional methods for arbitrary objects.
init
Convenience and designated initializers.
Open ArrowOpen iOS (iPhone/iPad Bootcamp)
The Tools
Using Xcode and the iPhone Simulator
Simple iOS App
Develop a simple iOS app using UIKit
Objective-C
Learn the language used in all iOS development
Memory Management
Use the reference counting mechanism correctly to prevent memory leaks and premature deallocation
Delegates
Using the delegate design pattern
Custom UIView Subclasses
Subclass UIView for custom drawing and event handling
Core Graphics
Drawing with Quartz
Multi-touch Events
Dealing with Multi-touch events
Table View
Using table views, table view controllers and creating custom table view cells
Notifications and Rotation
Use the notification design pattern to receive notifications of orientation change. Also covered: Autorotation
Core Animation
Using core animation to create unique user interfaces
Toolbars and View Controllers
Create applications with more than one view
Navigation Controller
Using navigation controllers to display multiple user interfaces
Archiving and Unarchiving
Using NSCoder for data persistence
Web Services
Using NSURLConnection to access web services
Camera
Accessing the camera and using the Image Picker
Low-memory Warnings
How to deal with low-memory warnings
Categories
Add methods to existing classes
Core Location and Map Kit
Use Location services to find your location and plot it on a map
Localization
Making internationalized iOS apps
Preferences
Letting the user store preferences for an application
Instruments
Using Instruments to locate performance problems and memory leaks
Blocks
Using Objective-C blocks
Split View Controllers
Using the split view controller to show side-by-side interfaces on the iPad
Modal and Popover View Controllers
Presenting user interfaces in popover windows and form sheets
Core Data
Using Core Data with SQLite for data persistence
Gesture Recognizers
Detecting gestures with UIGestureRecognizer
Storyboarding
Create application flows with UIStoryboard
iCloud
Synchronizing data with iCloud
MVCS
Introducing a new design pattern for applications that use data from external sources
REQUIREMENTS

Without prior experience in either a procedural programming language (such as C, Pascal, VB, or PHP) or another object-oriented platform (such as Java or C#) this class may prove to be extremely challenging.

Important Numbers

Important Telephone Numbers

For information or to enroll in a class in United States: (770) 817-6373
For information or to enroll in a class in Europe: +31 6 28 833 433