iOS Development Resources

This is a list of learning resources and materials that I find useful for iOS development. Please note that some of the links are affiliate links which may earn me a small commission. However all these products are ones that I use and believe to be of high value. Please let me know if you have any questions or have anything I should add to the list. Thanks.

Videos

Sessions from WWDC. Lots of great information. Lots of must watch sessions.

WWDC 2011 Videos WWDC 2010 Videos

Video podcast of a semester long iOS Class from Stanford. Lots of great information.

Fall 2011 Stanford iOS Development Course Stanford iPhone Class

Books

Become and Xcoder - A free book for starting with Cocoa using Objective-C

Objective-C 2.0 Essentials - The Objective-C 2.0 Essentials online book contains 34 chapters of detailed information intended to provide everything necessary to gain proficiency as an Objective-C programmer for both Mac OS X and iPhone development.

Learning Cocoa with Objective-C - Based on the Jaguar release of Mac OS X 10.2, this new edition of Learning Cocoa covers the latest updates to the Cocoa frameworks, including examples that use the Address Book and Universal Access APIs. A bit outdated but still useful.

Beginning iOS 5 Development: Exploring the iOS SDK - The team that brought you the bestselling Beginning iPhone 4 Development is back again for Beginning iOS 5 Development, bringing this definitive guide up-to-date with Apple's latest and greatest iOS SDK, as well as with the latest version of Xcode.

iOS Programming: The Big Nerd Ranch Guide - n this book, the world's leading Apple platform development trainers offer a complete, practical, hands-on introduction to iPhone and iPad programming. The authors walk through all the Apple tools and technologies needed to build successful iPhone/iPad/iPod touch Apps, including the iOS 5 SDK, the Objective-C language, Xcode 4.2 tools, Foundation framework, and the classes that make up the iPhone UI framework.

Programming in Objective-C 2.0 - Programming in Objective-C is a concise, carefully written tutorial on the basics of Objective-C and object-oriented programming for Apple's iOS and Mac platforms. The book makes no assumptions about prior experience with object-oriented programming languages or with the C language (which Objective-C is based upon).

Newsletter

iOS Dev Weekly

Apple Docs

iOS Reference Library - actually lots of PDFs from Apple

Selected PDFs

Your First iPhone Application - This tutorial shows how to create a simple iOS application. It has a text field, a label, and a button.

iOS Application Programming Guide - This document is the starting point for learning how to create iOS applications. It contains fundamental information about the iOS environment and how your applications interact with that environment.

iOS Development Guide - To develop iOS applications, you use Xcode, Apple’s first-class integrated development environment . Xcode provides all the tools you need to design your application’s user interface and write the code that brings it to life.

iOS Human Interface Guidelines - iOS Human Interface Guidelines describes the guidelines and principles that help you design a superlative user interface and user experience for your iOS app.

The Objective-C Programming Language - The Objective-C language is a simple computer language designed to enable sophisticated object-oriented programming. Objective-C is defined as a small but powerful set of extensions to the standard ANSI C language.

Learning Objective-C: A Primer - The Objective-C language is a simple computer language designed to enable sophisticated object-oriented programming. Objective-C extends the standard ANSI C language by providing syntax for defining classes, and methods, as well as other constructs that promote dynamic extension of classes.

Cocoa Fundamentals Guide - To a developer new to it, Cocoa might seem like a vast, uncharted new world of technology. The features, tools, concepts, designs, terminology, programming interfaces, and even programming language of this development environment may all be unfamiliar. Cocoa Fundamentals Guide eases the initial steps to Cocoa proficiency.

Getting Started With Core Data - The Core Data framework supports the creation of model objects that encapsulate your application data and logic in the Model-View-Controller design pattern. The framework provides ways to group, filter and organize model objects; change notification between views and models; automatic validation of property values; built-in undo management; and persistent storage of your model objects.

Core Data Programming Guide - The Core Data framework provides generalized and automated solutions to common tasks associated with object life-cycle and object graph management, including persistence.

Websites, Podcasts, Etc

Apple Developer Forums - Good place to ask questions. Must be a registered developer.

StackOverflow - Great place to ask questions and find answers for questions others have asked.

iDeveloper TV - Videos from the great NSConference conferences along with in depth training video courses.

iDTV Shows - Podcast for all things Cocoa often silly and fun but usually has interesting information.

Jeff LaMarche’s Blog - Jeff is a great instructor, a fountain of knowledge and an all around nice guy.

Cocoa Is My Girlfriend - Lots of good blog posts on all things Cocoa from Marcus Zarra, Matt Long and others.

Cocoa with Love - Very informative blog by Matt Gallagher.

GitHub - Lots of great OSS projects are hosted on GitHub.

Cocoa Objects - CocoaObjects.com is a web site containing a hand-selected listing of all sorts of reusable objects available for Macintosh programmers programming using the standard Cocoa Objective-C APIs.

360 iDev - Great intimate regional conference.

Xcode

[Xcode Quick Start Guide]IDE - Xcode is a highly customizable integrated development environment with many features for creating an efficient and effective working environment.

XCode Cheat Sheet - Xcode 4 Keyboard Shortcuts now available!

Third Party Software

TouchJson - JSON Parsing library. One of the oldest and still widely used.

TouchXML - XML companion to Touch JSON.

MOGenerator - generates Objective-C code for your Core Data custom classes. Unlike Xcode, mogenerator manages two classes per entity: one for machines, one for humans. The machine class can always be overwritten to match the data model, with humans’ work effortlessly preserved. HIGHLY RECOMMENDED for Core Data work.

Web Server VPS

Linode - I switched to Linode in early 2011 and have been very very happy with my VPS.