Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.

Overview

Programming in Objective-C 2.0 LiveLessons is the world’s first complete video training course on the basics of Objective-C, the programming language at the heart of Mac OS X and iPhone and iPad application development.

Bestselling author and trainer Stephen G. Kochan provides the new programmer with a step-by-step, hands-on introduction to the Objective-C language and the fundamentals of object-oriented programming.

The course does not assume any previous programming experience and includes many detailed, practical examples of how to put Objective-C to use in everyday programming tasks for the Mac OS X or iPhone and iPad platforms.

Stephen G. Kochan is author of the bestselling book Programming in Objective-C 2.0 and author or co-author of several bestselling books on the C language, including Programming in C, Programming in ANSI C, and Topics in C Programming. He has been programming Macintosh computers since the introduction of the first Mac in 1984, and he wrote Programming C for the Mac.

Part I: Language Fundamentals

1: Getting Started in Objective-C [00:14:00]

2: Classes, Objects, and Methods [00:43:03]

3: Data Types and Expressions [00:41:00]

4: Loops [00:23:19]

5: Making Decisions [00:37:20]

6: More On Classes [00:43:36]

7: Inheritance [00:45:48]

8: Polymorphism, Dynamic Typing, and Dynamic Binding [00:23:12]

9: More on Variables and Data Types [00:29:10]

10: Categories and Protocols [00:39:25]

11: The Preprocessor [00:37.24]

12: Underlying C Language Features [01:43:03]

Part II: iPhone Programming and the Foundation Framework

1: Introduction to the Foundation Framework [00:08:31]

2: Numbers and Strings [00:37:24]

3: Collections [01:26:56]

4: Working with Files [00:52:07]

5: Memory Management [00:40:13]

6: Copying Objects [00:35:58]

7: Archiving Objects [00:27:38]

8: Introduction to iPhone OS Programming for the iPhone, iPod touch and iPad [00:34:46]

9: Writing an iPhone OS Fraction Calculator [00:36:45]

Subscriber Reviews

Average Rating: 4.428571428571429 out of 5 rating Based on 35 Ratings

"Fasted way to learn Objective-C" - by Ed on 18-JUL-2011
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
While I have worked in Java/J2EE for years, I have never learned any flavor of C (C, C++, C#, Obj-C)--this was my first exposure to it that I was able to complete.

I found his treatment of the material thorough and very well explained.  I have tried other materials and the quality of these videos is unmatched.  However, his thoroughness did seem to slip a bit toward the end (had to go read part of the book to figure out how to tie in the View with the ViewController).

Highly recommended for learning Objective-C, especially if you have no C/C++/C#/Object-Oriented experience--even though a new edition of his book has recently been released, these vides are just as relevant.  

Report as Inappropriate

"Fantastic!!" - by mareeba on 02-JAN-2011
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
Really great intro to Objective-C and all its eccentric syntax. For anyone with a Java/C/C# background, reading this material would be dull and boring, but going through the videos makes the whole process engaging for the viewer. A really good grounding is needed in Objective-C before you jump into iPhone development and these videos fill the bill.
Report as Inappropriate

"Thumbs Up Review" - by Gee on 07-JUL-2010
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
Very good introductory book on Obj-C, although the author does not delve more into iPhone programming as I would have liked. He has explained the nuances of the language that had baffled me from reading text alone.

I recommend this book for those stuck on getting to grips with memory management in Obj-C, as well as for the clear in depth expansion on the syntax of the language, such as the weird and wonderful ordering of the brackets in making a method call.  

Report as Inappropriate

"Disappointing" - by Keith Mann on 22-MAR-2010
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
As a programmer with over 30 years of experience, I've forgotten more programming languages than I know, and I've reached the point where learning a new language is routine. Having recently taken on my first iPhone project, I expected to have Objective C mastered within a few days so I could proceed with learning the intricacies of the platform.

As usual, I searched Safari for resources and found Kochan's highly-recommended book and video. Videos, I find, are more concise than books and a faster way to learn the essentials.

I was quickly put off by Kochan's awkward presentation style and "death by PowerPoint" approach, but persevered. Unfortunately, things got worse. The inevitable "OOP 101" section was perhaps the worst explanation of object-oriented programming I've encountered. How can one screw this up? Is it so difficult to find a suitable set of analogies to real-life? Yet Kochan does, having us believe, apparently, that cars wash themselves (at least in Objective C) and stumbling over the distinction between class and object. I immediately doubted whether I could trust his explanations of other concepts, when this one, so fundamental, was so badly botched.

The fault is perhaps not all Kochan's. Objective C is an awkward language that took the Neanderthal branch of the C family tree, while Java and C# proceeded to Sapiens status. In fact, for anyone used to the elegance of C# and Visual Studio, Objective C and XCode will seem a giant leap backwards. Nevertheless, Kochan has made the pain greater, not less, and thus has failed as a teacher. Sadly Safari offers no alternatives, so I'll have to look elsewhere and keep my fingers crossed.

Report as Inappropriate

"Great set" - by rtamesis on 09-MAR-2010
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
This is the best set of tutorials teaching the fundamentals of Objective C and really makes the book much more understandable. Can't wait to see Part II.
Report as Inappropriate

Table of Contents

Chapter/Selection

Time

Introduction to Objective-C Part 1

Introduction to Objective-C Part 1

Play Video

00:02:11

Lesson 1 Getting Started in Objective-C

Learning Objectives

Play Video

00:00:45

What is Objective-C?

Preview

00:01:52

Your First Program

Play Video

00:06:12

Steps for Using Xcode

Preview

00:06:37

Lesson 2 Classes, Objects, and Methods

Learning Objectives

Play Video

00:00:54

What is a Class, Object, or Method?

Preview

00:06:02

Defining a Class to Work with Fractions

Preview

00:30:55

Accessing Instance Variables

Preview

00:11:03

Lesson 3 Data Types and Expressions

Basic Data Types

Preview

00:11:33

Arithmetic Expressions

Preview

00:15:57

Defining a Calculator Class

Play Video

00:13:38

Lesson 4 Loops

The for statement

Preview

00:10:02

The while statement

Preview

00:03:34

The do statement

Preview

00:03:18

Review

Preview

00:06:28

Lesson 5 Making Decisions

Learning Objectives

Play Video

00:00:39

The if Statement

Preview

00:22:29

The switch Statement

Preview

00:06:58

The Conditional Operator and Boolean Variables

Preview

00:07:52

Lesson 6 More On Classes

Learning Objectives

Play Video

00:01:03

Properties, Synthesized Accessor Methods, and the dot Operator

Preview

00:12:14

Multiple Method Arguments

Preview

00:05:05

Passing Objects as Arguments

Preview

00:06:54

Local Variables; The self Keyword

Preview

00:10:14

Allocating and Returning Objects in Methods

Preview

00:09:38

Lesson 7 Inheritance

Learning Objectives

Play Video

00:00:38

Inheriting Methods and Instance Variables

Preview

00:16:10

Subclasses: Extension through Inheritance

Preview

00:08:05

Classes Owning Their Own Objects; Overriding Methods

Preview

00:21:33

Lesson 8 Polymorphism, Dynamic Typing and Dynamic Binding

Learning Objectives

Play Video

00:00:46

Polymorphism; Static Typing

Play Video

00:10:01

Dynamic Typing and Dynamic Binding

Preview

00:13:09

Lesson 9 More On Variables and Data Types

Learning Objectives

Play Video

00:00:43

Writing Initialization Methods

Preview

00:18:13

Global Variables

Preview

00:10:57

Lesson 10 Categories and Protocols

Learning Objectives

Play Video

00:00:41

Categories

Preview

00:18:08

Protocols

Preview

00:21:05

Lesson 11 The Preprocessor

Learning Objectives

Play Video

00:00:35

The #define Statement

Preview

00:11:52

Writing Macros

Preview

00:12:42

Conditional Compilation

Preview

00:08:30

Review

Preview

00:04:24

Lesson 12 Underlying C Language Features

Learning Objectives

Play Video

00:00:53

Arrays

Play Video

00:10:18

Functions

Preview

00:17:53

Structures

Preview

00:25:36

Pointers

Preview

00:37:38

Other Topics and Summary

Preview

00:11:43

Introduction to Objective-C Part 2

Introduction to Objective-C Part 2

Preview

00:01:37

Lesson 1: Introduction to the Foundation Framework

Learning Objectives

Play Video

00:00:32

Introduction to the Foundation Framework

Preview

00:07:16

Lesson 2: Numbers and Strings

Learning Objectives

Play Video

00:00:40

Number Objects

Preview

00:18:48

String Objects

Preview

00:45:53

Lesson 3: Collections: Arrays, Dictionaries and Sets

Learning Objectives

Play Video

00:00:44

Array Objects

Preview

00:23:03

Array Objects: An AddressBook Example

Preview

00:44:39

Dictionary Objects

Preview

00:14:36

Sets

Preview

00:03:47

Lesson 4: Working with Files

Learning Objectives

Play Video

00:00:49

NSFileManager and NSFileHandle

Preview

00:22:27

Using NSData to Copy a File

Preview

00:03:23

Working with Directories

Preview

00:06:20

Enumerating a Directory

Preview

00:06:22

Working with Paths

Preview

00:09:13

Working with URLs

Preview

00:04:24

Lesson 5: Understanding Memory Management

Learning Objectives

Play Video

00:00:38

Garbage Collection

Preview

00:27:11

Autorelease Pool

Preview

00:03:05

Manual Memory Management

Preview

00:04:03

Memory Management Rules

Preview

00:05:51

Lesson 6: Copying Objects

Learning Objectives

Play Video

00:00:33

Copying Objects: Fraction Class Example

Preview

00:25:19

Copying Objects: Summary and Review

Preview

00:09:38

Lesson 7: Archiving Objects

Learning Objectives

Play Video

00:00:37

Archiving with Property Lists

Preview

00:08:45

Archiving with Keyed Archives

Preview

00:17:52

Lesson 8: Introduction to iPhone/iPod Touch Programming

Learning Objectives

Play Video

00:00:41

Cocoa and Cocoa Touch

Preview

00:02:39

The iPhone SDK

Preview

00:03:42

Your First iPhone Application

Preview

00:01:18

Creating a Simple iPhone App

Preview

00:19:34

Review: How it Was Done

Preview

00:06:27

Lesson 9: Writing An iPhone Fraction Calculator

Learning Objectives

Play Video

00:00:43

How the Finished Fraction Calculator App Works

Preview

00:02:48

Setting Up a View-Based Application Project

Preview

00:16:33

The View Controller Class and Operation of the Calculator

Preview

00:24:47

Adding an Icon to the App

Preview

00:01:40

Working with the Demo App

Preview

00:02:20