Jesse's Objective-C Video

74 videos totalling 5.25 hours of training in the language and tools you'll need to program iOS and OS X. Find out more here.

Objective-C has been changing recently. There were major changes in Objective-C 2.0, but that was released in 2007, and six years can be an eternity in the software world. Since 2007, new features have been added including Automatic Reference Counting (ARC), blocks, literals, and subscripts. With the latest releases of Xcode, new tools are available in Edit/Refactor to convert your legacy code to use ARC and modern syntax. This is a change from previous guidance which suggested that adopting ARC on existing projects wasn't recommended. Now it's not only recommended but automated.

Blocks are perhaps one of the most critical changes. They are not unique to Objective-C (they're often called closures in computer science courses). They consist of functions or function references together with a referencing environment consisting of the non-local variables that are needed by the block. Blocks are sweeping through the Cocoa and Cocoa Touch frameworks often replacing callback functions. As more and more of our apps are multi-threaded and asynchronous, blocks provide an excellent non-linear way of developing code.

Put together, these recent changes mean that if you've been putting off learning Objective-C, now is the right time to jump in, and this video can help. If you learned Objective-C in the past, now is the time for a refresher to bring your knowledge up to date.

Along with recent updates to Objective-C, this video tutorial also includes a guide to Xcode and its recent advances such as Fix-It, Code Completion, and other productivity features.

 Sometimes it's hard to tell where the language ends and the frameworks and tools begin. Objective-C, Xcode, and the Cocoa frameworks are a truly integrated development environment. What is pervasive is the attention to detail for which Apple is famous. It's hard not to let that attention to detail rub off on you as you develop for iOS and OS X. I find it an immensely rewarding environment in which to spend most of my working days.

—Jesse Feiler