Deep Dive

iOS Foundations

Learn fundamentals such as: Core Data, Web View, Notifications and App Preferences using the latest version of Xcode and iOS. You will also learn some features that are new with iOS and fundamental to app development such as: Automatic Reference Counting (ARC), storyboards, and appearance.

This course will be retired on May 1, 2014 as some of it is outdated. Please make sure you are following the iOS Development Track.

Cover-ios-foundations

10 Achievements

Automatic Reference Counting

Automatic Reference Counting

Automatic Reference Counting is an exciting new addition to iOS 5 that makes manual reference counting obsolete. It is a compiler level feature that removes all the hassle out of memory management and makes iOS development easier.

Storyboards

Storyboards

A storyboard is a visual representation of the user interface for an iOS application. A storyboard is composed of a sequence of scenes, each of which is represented by a view controller and its views. Scenes are connected by a segue, which represents the transition between two view controllers.

Web View

Web View

The UIWebView class uses the WebKit rendering engine to embed web content in an application. It can also display documents such as: PDF, Excel, Keynote, Numbers, etc. It supports browser navigation such as moving forward and back in the history stack and intercept browser events.

iOS 5 Core Data

Core Data

Core Data is not a database, it is a framework that helps in managing and persisting the object graph. It provides additional features such as schema migration, change tracking, relationship maintenance, validation, querying and more.

Notifications

Notifications

A notification is an iOS design pattern that broadcasts messages to observing objects. The centerpiece of the notification mechanism is a singleton object known as the notification center. When an object posts a notification, it goes to the notification center, which acts as a kind of clearing house and broadcast center for notifications. Objects that need to know about an event elsewhere in the application register with the notification center to let it know they want to be notified when that event happens.

Appearance

Appearance

iOS 5 has new capabilities to help customize the appearance of UIKit views and controls giving your application a unique look and feel. In addition, the appearance proxy helps you consolidate customization while providing a consistent look and feel.

App Settings

App Settings

Every app needs to provide the user with settings to customize its appearance or functionality. In iOS the easiest way to provide these preferences are via the settings app which involve knowing: property lists, user defaults and settings bundle. The user defaults and property lists are key-value stores designed for storing simple data types such as: strings, numbers, dates, Boolean values, data objects and more.

Blocks and Categories

Blocks and Categories

A category is used to define additional methods of an existing class without subclassing. Blocks are simply a block of executable code that have access to local variables and can be stored or passed around.

API Access

API Access

Accessing a third-party Application Programming Interface or API involves making a request to a server to send or receive data. This data is usually in the format of an XML document. Parsing the XML document involves traversing through the document to extract information. iOS has two different parsing methodologies and several different classes that apply these methodologies.

Location

Location

The Core Location framework helps you determine the current location associated with a device. The framework uses the available hardware to determine the user’s position and heading. The classes and protocols in this framework provide periodic location and heading updates based on the required accuracy. In addition, reverse geocoding capability determines geographic information such as: street address, city, state, locality, zip code, etc.

Instructor

  • Amit Bijlani

    Amit is an iOS Developer who loves teaching and speaking about iOS. When not in front of a computer, he's exploring the outdoors or meditating. Find him on Twitter @paradoxed.

Download videos

You have to sign up for Treehouse in order to download course videos.

Sign up

Release Date

This course will be available in DATE.