Objective-C and iOS Bootcamp

( Duration: 5 Days )

Understanding the Objective-C programming language is critical to becoming a successful iPhone developer. This Objective-C and iOS Bootcamp training course is designed to provide developers the basic skills and knowledge to become proficient in Objective-C and take these skills and apply it towards application development for the iPhone/iPad.

By attending Objective-C and iOS Bootcamp workshop, Participants will learn to:

  • define new classes and write programs in Objective-C
  • compile, edit, and run Objective-C programs under Mac OS X
  • archive and copy objects and to thoroughly understand the principles of memory management
  • write iPhone and iPad applications
  • use XCode to manage the application development project, and to compile, edit, and debug applications
  • run applications on a device
  • to use Interface Builder to design a user interface
  • integrate iPhone interface elements like buttons, switches, and sliders into application
  • work with views and view controllers, navigation controllers, tables, and pickers
  • integrate multimedia into applications to create sound effects, and to play audio and video clips
  • respond to touch controls and gestures
  • manipulate images, perform simple animation, and save and restore application’s data

Programmers who want to write applications for Mac OS X, the iPhone, the iPod Touch, or the iPad. Some prior programming experience, preferably with an object-oriented programming language.



Getting Started in Objective-C

  • What is Objective-C?
  • Your First Program
  • Steps for Using Xcode
  • What is a Class, Object, or Method?
  • Defining a Class to Work with Fractions
  • Accessing Instance Variables

Data Types and Expressions

  • Basic Data Types
  • Arithmetic Expressions
  • Defining a Calculator Class

Loops and Making Decisions

  • The for statement
  • The while statement
  • The do statement
  • The if Statement
  • The switch Statement
  • The Conditional Operator and Boolean Variables

More On Classes

  • Properties, Synthesized Accessor Methods, and the dot Operator
  • Multiple Method Arguments
  • Passing Objects as Arguments
  • Local Variables; The self Keyword
  • Allocating and Returning Objects in Methods

Inheritance, Categories, and Protocols

  • Inheriting Methods and Instance Variables
  • Subclasses: Extension through Inheritance
  • Classes Owning Their Own Objects; Overriding Methods
  • Categories
  • Protocols

Polymorphism, Dynamic Typing and Dynamic Binding

  • Polymorphism; Static Typing
  • Dynamic Typing and Dynamic Binding

The Preprocesor and Underlying C Language Features

  • Preprocessor
  • Arrays
  • Functions
  • Structures
  • Pointer
  • Unions
  • Miscellaneous Language Features

Numbers and Strings

  • Number Objects
  • String Objects


  • Array Objects
  • Fast Enumeration
  • Sorting Arrays
  • Dictionary Objects
  • Set Objects

Working with Files

  • Managing Files and Directories: NSFileManager
  • Working with Paths: NSPathUtilities.h

Memory Management

  • The Autorelease Pool
  • Reference Counting
  • Summary of Memory Management Rules
  • Garbage Collection

Copying Objects

  • The copy and mutablecopy Methods
  • Shallow Versus Deep Copying
  • Implementing the NSCopying Protocol
  • Copying Objects in Setter and Getter Methods

Archiving Objects

  • Archiving with XML Property Lists
  • Archiving with NSKeyedArchiver
  • Writing Encoding and Decoding Methods
  • Using NSData to Create Custom Archives
  • Using the Archiver to Copy Objects

Writing Your First iPhone Application

  • Introductin to Cocoa Touch
  • The iPhone SDK
  • Your First iPhone Application

Web-based vs. Native Applications

  • The Difference Between the Two

Cocoa, Cocoa Touch an the iPhone SDK

  • Definitions

iPhone OS Frameworks

  • What is a Framework?
  • Overview of iPhone SDK Frameworks

iPhone Application Development Overview

  • Overview of the Tools and Process

Some Quick Reviews

  • Objective-C
  • Protocols
  • Memory Management

Writing Your First iPhone Application

  • Outlets and Actions
  • Introduction to Interface Builder
  • Using the iPhone Simulator
  • Extending your Application: Adding an Application Icon

Simple Debugging Techniques

  • Using the Preprocessor
  • NSLog and the Description Method
  • Using Breakpoints

Running Your App on a Device

  • The iPhone Provisioning Portal
  • Developer Certificates, App IDs, Device IDs, Provisioning Profiles
  • XCode’s Organizer Window

Application Execution and MVC

  • Applications and Events
  • The Model-View-Controller Design Pattern

Screen Geometry

  • The iPhone and iPad Coordinate System
  • The frame, bounds, center, and origin
  • Supporting Structures and Functions
  • Applications and Events

Understanding Views and View Controller

  • Properties of Views
  • Subviews and Superviews
  • Creating a View Controller
  • Multiple View Controller
  • Creating Views Programmatically
  • Understanding a View-Based Application
  • Manipulating Views: Moving and Hiding
  • UIImageView - Working with Images
  • Adding Simple Animation
  • Handling Device Rotation and Control Resizing and Repositioning

Programming for the iPad And More…

  • Using the UIPickerView class
  • Reading Data from the Internet
  • Creating a Navigation-based Application
  • Working with a Table View Controller
  • Populating Data in a Table
  • Handling Row Selection
  • Working with UITextView’s
  • Playing Audio and Video Files
  • Saving an Image to the Photo Album
  • Displaying Alerts
  • Creating a Default.png screen
  • Transforming Images
  • Using Timers
  • Simple Animation
  • Saving and Restoring the Application State
  • Handling Touch Events
  • Responding to Shake Gestures
  • Working with Sliders and Switches
  • Adding Sound Effects
  • Application Design Decision: Universal vs. Separate Apps
  • Examples
  • Additional Topics, Time Permitting

Encarta Labs Advantage

  • One Stop Corporate Training Solution Providers for over 3,500 Modules on a variety of subjects
  • All courses are delivered by Industry Veterans
  • Get jumpstarted from newbie to production ready in a matter of few days
  • Trained more than 20,000 corporate candidates across india and abroad
  • All our trainings are conducted in workshop mode with more focus on hands On

View our other course offerings by visiting www.encartalabs.com/course-catalogue

Contact us for delivering this course as a public/open-house workshop for a group of 10+ candidates at our venue