Objective-C for Experienced Programmers

This course can be delivered live online, at your offices, or at any other location.

Objective-C is the language for developing iPhone and iPad applications. For people with prior object-oriented programming experience, this accelerated class teaches the syntax of the Objective-C language and the basics of the foundation classes. This includes user-defined objects, an in-depth review of the foundation classes for numbers, strings, arrays, dictionaries and dates, and an overview of the Objective-C memory management model. At the end of this programming language overview, students will understand the Objective-C language concepts required for building iPhone and iPad applications.

Goals
  1. Learn the underlying programming language for building iPhone and iPad applications.
  2. Learn the basics of the Objective-C language.
  3. Understand the memory management model for Objective-C and options for the developer.
  4. Learn about the Foundation classes for data manipulation and their use in Objective-C programming.
Outline
  1. Objective-C Overview
    1. The Xcode IDE
      1. Projects
      2. Hello World Application
    2. Objective-C
      1. Language Features
      2. Brief History
      3. Role in Mobile Device Applications
  2. Variables
    1. Numeric Variables
      1. Numeric Representations
      2. Integers
      3. Floating Point
      4. Comments
    2. Nonnumeric Variables
      1. char
      2. boolean
    3. Reference Variables
    4. The * and & Operators
    5. Variable Scope
  3. Arithmetic
    1. Arithmetic Operators
      1. Addition and Subtraction
      2. Multiplication, Division, and Modulus
      3. Shorthand Notation
    2. Type Casting
    3. Math Library Functions
      1. pow
      2. random
  4. Conditional Logic and Looping
    1. Conditional Statements
      1. Basic if Statement
      2. if else Statement
      3. switch Statement
      4. The Ternary Operator
    2. Looping Statements
      1. while Statement
      2. do...while 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. 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
  7. Inheritance
    1. Purpose of Inheritance
    2. Implementing Inheritance
      1. The Root Super 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. 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
Class Materials

Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following is required for this Mobile Apps class:

  • Object-oriented programming experience.

Experience in the following would be useful for this Mobile Apps class:

  • c++ or C# experience.
Follow-on Courses

Training for your Team

Length: 3 Days
  • Private Class for your Team
  • Online or On-location
  • Customizable
  • Expert Instructors

What people say about our training

I thoroughly enjoyed the class, and feel that it was very educational for me.
Ginri Jordan
HTC
This was a very efficient course. Covered a lot of material in just 2 days. I am completely new to SQL concepts and the instructor did a great job of explaining them and was very open to providing additional help when needed.
Emily Pagan
L'Oreal
The instructor had an excellent way of explaining the topics from the manual. This class was exactly what I was looking for.
James Porzse
CIBER
Webucator provided an excellent online course that fit my schedule and went at just the right pace. The instructor made sure everyone understood everything discussed before going forward, and was sure to incorporate all class members. I would gladly take another training from Webucator!
Briana White
Webasto-Edscha Cabrio

No cancelation for low enrollment

Certified Microsoft Partner

Registered Education Provider (R.E.P.)

GSA schedule pricing

62,569

Students who have taken Instructor-led Training

11,829

Organizations who trust Webucator for their Instructor-led training needs

100%

Satisfaction guarantee and retake option

9.63

Students rated our Objective-C for Experienced Programmers trainers 9.63 out of 10 based on 3 reviews

Contact Us or call 1-877-932-8228