Mac, iPhone, and iPad Programming

Mac, iPhone, and iPad Programming
Instructor-Led Course
Hours: 24
Duration of Access: 6 weeks
Start Dates: Oct 14, Nov 11, Dec 09, Jan 13
2,214 Students
have taken this course.


A new session of each course starts monthly. If enrolling in a series of two or more courses, please be sure to space the start date for each course at least two months apart.

Week 1

Wednesday - Lesson 01

Computers, smartphones, and tablets may look nice, but they're essentially useless without software to make them work. Today one of the hottest computers around is the Mac, one of the most popular phones is the iPhone, and one of the dominant tablets is the iPad. With so many people buying these devices, there's a tremendous opportunity to write and sell software or apps for all these millions of Mac, iPhone, and iPad users. In this lesson, you'll learn the basics of how programming works for any computer. Then you'll learn how a programming tool called Xcode can help you create programs or apps for the Mac, iPhone, and iPad.

Friday - Lesson 02

To create an OS X program or an iOS app, you need to use Xcode, Apple's free programming tool that runs on a Mac. With Xcode, you can create projects that consist of multiple files. Then you can write and edit Objective-C and Swift code in one file while designing your program's user interface in a different file. This lesson teaches you what Xcode can do and how it works so you can get comfortable using its features.

Week 2

Wednesday - Lesson 03

Every type of program you create, whether it's an OS X program or an iOS app, needs a user interface. And that user interface needs to accept data, display information, and allow the user to control the program by giving commands. OS X programs have a standard user interface that consists of a menu bar with pull-down menus along with multiple, resizable windows. On the other hand, iOS apps can display only one screen at a time that responds to touch gestures with a limited number of options on display at any given time. By understanding the different types of user interfaces for OS X and iOS, you can design an OS X program or iOS app that meets (or exceeds) the user's expectations.

Friday - Lesson 04

User interfaces offer features that all OS X programs and iOS apps share. However, an interface must be able to adapt to user changes in window size, screen size, or orientation without requiring reprogramming. This lesson explains more about how constraints can define the position and size of the items on your user interface. In addition, this lesson helps you better understand Xcode's user interface, which provides multiple ways to perform commands.

Week 3

Wednesday - Lesson 05

The main feature of every user interface is a window, which Xcode calls a view. A view lets you place and arrange other user interface items on it, such as buttons, text fields, and labels. Xcode stores your user interface in either a .xib or .storyboard file. You can use either .xib or .storyboard files for OS X programs, but you can use .storyboard files for iOS apps only. In this lesson you'll even learn how to create custom user interfaces for different screen sizes or orientations, which can be especially useful for iPhones.

Friday - Lesson 06

The purpose of every user interface is to allow input, display information, and allow the user to give commands. To design a user interface, you have to fill a window or view with items such as text fields, buttons, and labels. And to make your user interface responsive, you have to connect user interface items to your code using IBOutlets. An IBOutlet variable lets you put data in a user interface item, such as a label or a text field. This lesson teaches you the basics of connecting your user interface with your Objective-C or Swift code.

Week 4

Wednesday - Lesson 07

The main tool for writing OS X programs and iOS apps is Xcode. Although you've used Xcode to create projects, up until now you've used only a fraction of its features. In this lesson, you'll learn to customize Xcode and get help from Apple's documentation. You'll also find out about the basics of object-oriented programming and how it relates to creating OS X and iOS projects. By the time you finish this lesson, you'll have a better understanding how Xcode can help you create programs easier and faster than ever before.

Friday - Lesson 08

While you can design your program's user interface without writing any code, eventually you'll need to know how to write code to make your program actually work. In this lesson, you'll start learning to write Objective-C and Swift code. You'll find out how to write commands in each programming language. By writing Objective-C and Swift code, you can customize the behavior of your program and make it solve useful problems.

Week 5

Wednesday - Lesson 09

To fully understand OS X programs and iOS apps, you need to understand object-oriented programming. To create objects, you must first define class files, which define properties and methods. All user interface objects are classes, and all OS X programs and iOS apps are based on classes. For maximum flexibility, you can create your own custom class files as well. In this lesson, you'll learn the steps to creating class files for both OS X and iOS projects in Objective-C and Swift.

Friday - Lesson 10

In previous lessons you learned to retrieve text typed into a text field and display new text in a label. In this lesson, you'll practice retrieving and storing data in various user interface items. To find out how to store and retrieve data, you need to understand that all user interface items are classes, and all classes have properties. By learning how to find properties for class files and using inheritance to help you find related classes, you can find properties and methods that you can use in your own programs.

Week 6

Wednesday - Lesson 11

Xcode provides different user interface items that you can drag out of the Object Library and place on a user interface. While it's possible to create a user interface entirely in code, that's not common. However, there are some user interface items you can't use unless you create them in code. In this lesson, you'll learn how to create an alert dialog box using Objective-C and Swift to display information on the screen for the user to respond to.

Friday - Lesson 12

The first eleven lessons gave you an introduction to several topics: Xcode, Objective-C, Swift, and user interface design. Obviously this short course can't teach you everything you need to know, but it can give you a solid foundation so you'll feel confident learning more on your own. In this lesson, you'll get a brief overview of several additional topics that you'll likely need when you start creating your own OS X programs and iOS apps . . . from fixing problems in code to working with teams of programmers.


Thank you for the course. I have not programmed in 15 years. This gave me the jump start that I needed to make some progress and really put a structured framework around how to get started.

Follow Us