Introduction to iOS SDK

This module is an introduction to iOS SDK and the expected Hello World application. You’ll get an overview of the tools and technology used for iOS and Mac development. Also covered is the mobile app environment in general including third party frameworks that you can use to help in your own development. Once this module is complete, you should expect to know your way around Xcode and be able to set up a iOS application project.

Instructions

Step 1: Watch Presentation Videos

Summary In this presentation, we’ll go over the fundamental technology stack, major iOS SDK tools and we’ll discuss the mobile app development and business environments as they are today. In the demo video, you’ll see how to navigate around Xcode and make the most out of this development tool.

Presentation Video

Xcode Demo Video

Step 2: Complete Hands-On Labs

Summary Explore iOS SDK and get familiar with code editing and debugging. Learn how to set up an iOS application project in Xcode, manage the executable settings and specify the icon and default screens. The end result of your lab work will produce the beginning of the NoteMaker app which we will use throughout this workshop.

NoteMaker App

The app that you started in the hands-on lab says Hello World to the console log window. You should also see that the icon and starting screen are updated in your completed lab app.

NoteMaker in iOS Simulator Springboard

Note we will be building the NoteMaker app throughout the modules, so make sure that you are either keeping up or that you download the completed application prior to moving on to the next module.

Step 3: Review Notes

Summary Review the notes and supplementary content associated with the Introduction to iOS SDK module.

  • Download Presentation PDF
  • Basic Mac/iOS Application

    You’ll typically find the code that sets up an application in a file named main.m. This is true for C programs as well as Mac and iOS applications. Here is the code that you will find in a basic Mac or iOS application:

    #import <UIKit/UIKit.h>
    #import "AppDelegate.h"
    
    int main(int argc, char *argv[]){
        @autoreleasepool {
            return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
        }
    }

    As you might guess, this function has only one purpose: to launch the application with the UIApplicationMain function. This launches a UIApplication instance and associates the application with an app delegate. We’ll go into more details about these objects in module 3.

    Technology Stack

    iOS is built on top of technology that supports Unix and Mac as well. Here is where the various frameworks fit into the big picture.

    iOS Technology Stack

    References

    Summary Links to primary sources and places where you can find more technical documentation.

  • Orientation Module (if you have questions on how to use this material)
  • Apple’s Getting Started Guide