Objective-C Training for iOS Development

This 4 day Objective-C training class teaches the fundamentals of programming in Objective-C, the language used to develop iPhone and iPad applications. This course covers Xcode, the integrated development environment used to build Objective-C applications. Primitive and reference variables are covered as well as arithmetic operators, conditional processing, looping, and functions. The object-oriented nature of the language is presented as well as the Foundation framework.  An introduction to the Cocoa framework and a discussion of a basic user interface for mobile devices are included. We will use Xcode built-in iPhone and iPad simulators for the exercises and demonstrations in the course.  In this way, students get a feel for how iPhone and iPad application development works and will be ready to move on to our iOS Application Development with Xcode 4 Training class.

Goals

  • Learn how to use Xcode to develop Objective-C programs.
  • Learn how to define primitive and reference variables.
  • Understand the use of arithmetic operators.
  • Know how to write conditional and looping statements.
  • Learn how to write and call a function.
  • Understand the object-oriented features of Objective-C.
  • Learn how to create objects and methods.
  • Understand important classes in the Foundation framework.
  • Learn how to build a basic user interface using the Cocoa framework

Outline

  1. Objective-C Overview
    1. The Xcode IDE
      1. Projects
      2. Hello World Application
    2. Objective-C
      1. Brief History
      2. Role in Mobile Device Applications
  2. Variables
    1. Numeric Variables
      1. Numeric Representations
      2. Integers
      3. Unsigned Integers
      4. Floating Point
      5. Constants
      6. Comments
    2. Nonnumeric Variables
      1. char
      2. boolean
    3. Variable Scope
  3. Arithmetic
    1. Arithmetic Operators
      1. Addition and Subtraction
      2. Multiplication, Division, and Modulus
      3. Shorthand Notation
    2. Typecasting
    3. Math Library Functions
      1. pow
      2. arc4random
  4. Conditional Logic and Looping
    1. Conditional Statements
      1. Basic if Statement
      2. if else Statement
      3. if else if Statement
      4. switch Statement
      5. The Ternary Operator
    2. Looping Statements
      1. while Statement
      2. dowhile Statement
      3. for Statement
  5. Functions
    1. Purpose of a Function
    2. Declaration
      1. Header
      2. Body
    3. Calling a Function
      1. Passing Parameters by Value
      2. Passing Parameters by Reference
    4. Functions vs. Methods
  6. Object-oriented Programming According to Objective-C
    1. Object-Oriented Programming (OOP)
    2. How Objective-C Implements OOP
    3. Encapsulation of Member Variables
      1. The class definition: Interface
      2. The Class Interface and @property
      3. Method vs. Function Syntax
      4. Static Variables and Class Methods
      5. The Class Implementation and @synthesize\
    4. Creating an Object from a Class
      1. Sending Messages to Objects
      2. The Role of Methods
    5. Visibility of Variables
    6. The Constants nil and NULL
    7. Reference Variables
    8. The * and & Operators
  7. Inheritance
    1. Purpose of Inheritance
    2. Implementing Inheritance
      1. The Root Class
      2. Creating and Processing the Subclass
    3. NSObject Class
    4. Memory Acquisition
      1. alloc
      2. init
    5. Method Override
    6. Where’s Abstraction?
  8. Polymorphism
    1. The Purpose of Polymorphism
    2. Polymorphism in Objective-C
    3. Placing Objects in Collections
      1. Using NSMutableArray
    4. Runtime Identification of Objects
  9. Arrays
    1. The “Classic” C Array
      1. Defining the Array
      2. Processing the Array
    2. Foundation Framework Arrays
      1. NSArray
      2. NSMutableArray
  10. Foundation Framework
    1. The Foundation Framework
      1. Strings
      2. Date/Time
      3. Numbers
      4. Collections
    2. NSString
      1. Replacing char*
      2. Initialization
      3. NSString Methods
    3. NSNumber and NSNumberFormatter
      1. Replacing int, float, and more
      2. Initialization
      3. NSUInteger and NSInteger
      4. Formatting
    4. NSDate and NSDateFormatter
      1. NSDate
      2. NSDateFormatter
  11. Collections
    1. Arrays
      1. NSArray
      2. NSMutableArray
    2. Sets
      1. NSSet
      2. NSMutableSet
      3. How Duplicate Elements Are Detected: isEqual and hash
    3. Dictionaries
      1. NSDictionary
      2. NSMutableDictionary
  12. Memory Considerations
    1. Memory Management in Objective-C
      1. Manual Retain-Release
      2. Automatic Reference Counting
      3. Garbage Collection
    2. Strong and Weak
    3. Release and Retain
    4. Atomic and Nonatomic
    5. Automatic Reference Counting
  13. Cocoa Framework
    1. The Purpose of Cocoa
    2. User Interfaces
      1. What Is a User Interface?
      2. View Controllers
    3. Using Interface Builder to Create User Interfaces
      1. The XIB File
      2. IBAction and IBOutlet
      3. Drag and Drop with the Connections Inspector
    4. Creating a Simple Mobile Application
      1. Creating the Project
      2. Adding Properties and Synthesized Methods
      3. Building the User Interface
      4. Testing the Application

To Hire an AMS Objective-C / iOS Developer Subject Matter Expert and Instructor who also teaches this class, call us today at 800-798-3901!

Leave a Reply