ObjectiveC Programming
Objective-C is the primary programming language you use when writing software for OS X and iOS. It’s a superset of the C programming language and provides object-oriented capabilities and a dynamic runtime. Objective-C inherits the syntax, primitive types, and flow control statements of C and adds syntax for defining classes and methods. It also adds language-level support for object graph management and object literals while providing dynamic typing and binding, deferring many responsibilities until runtime.This course introduces the Objective-C language and offers extensive examples of its use. You’ll learn how to create your own classes describing custom objects and see how to work with some of the framework classes provided by Cocoa and Cocoa Touch. Although the framework classes are separate from the language, their use is tightly wound into coding with Objective-C and many language-level features rely on behavior offered by these classes.


  1. Introduction
    • Short History
    • Technology Overview
    • SDK
  2. Architecture
    • Architecture layers
    • Layers overview
    • Frameworks
  3. Development Environment Setting Up IOS
    • Steps for the developer
      • Register as an Apple iOS developer
      • Install the latest Xcode IDE (including the iOSsimulator)
    • Deploy to the iOS device
      • Steps for the company:
      • Steps for the developer to take
  4. How to start developing an iOS Application?
    • Create first application
    • Running an debugging the app
    • Using simulator
  5. Objective-C Overview
    • Fundamental aspects of the Objective-C
    • In-depth look at functions
  6. Objective-C Classes
    • How to Define Objective-C Class
    • Interfaces
    • Methods, Properties
    • Implementation
    • Instantiation
    • Reflection
  7. Objective-C Memory Management
    • Methods
    • Rules for MRR
    • autoreleasepool
    • Memory
  8. Objective-C Foundation Classes
    • Commonly used classes
    • Comparing
    • isEqual ,hash,copy methods
  9. Objective-C Polymorphism
    • What is Polymorphism?
    • How Does Polymorphism Work?
    • Protocols and Inheritance
    • self vs. super
    • Method Overriding
    • Abstracts Classes and methods
    • Subtyping, Subclassing
  10. Objective-C Categories
    • Create a Category
    • Using Categories
  11. Objective-C Blocks
    • What is a Block?
    • Create a block
  12. Objective-C Exceptions and Errors
    • NSException, NSError
    • Built-in Exceptions
    • Handling Exceptions in Objective-C
  13. Objective-C Collections
    • Foundation Core Collections
    • Sorting, Filtering and Selecting


2 days


Instructor Lead


Experience in the following areas is required: Some prior programming experience in a procedural or object-oriented language.