[Education Detail View]

 

Intro to iOS App Development with Swift   

Year Granted: 2015
Institute: Udacity
Course code ud585

Course Summary

In this course we will build an iPhone app that records a conversation between you and a friend, and then makes your voices sound like a Chipmunk or Darth Vader.

This course will introduce you to iOS app development in Swift, a new programming language from Apple, and serves as your launching point into the iOS Developer Nanodegree.

Why Take This Course?

This course will set you on your way to becoming an iOS Developer, where you’ll establish a basic understanding of the iOS ecosystem. You’ll also have working knowledge of Swift, Apple’s custom programming language created exclusively for the mobile developer.

Prerequisites and Requirements

This course assumes prior programming experience. Specifically, you should have a strong understanding of programming concepts like variables, if statements, loops, functions, and classes. Lesson 1 of Intro to Computer Science and Programming Foundations with Python are good courses to take if you are completely new to programming.

You will also need access to a Mac computer running OS X 10.9 or later.

We have designed this course such that you will not need a physical device (i.e. an iPhone or an iPad) to build your app. We will be using a simulator on your mac that will imitate the features of a phone on your computer. Towards the end of the course we will provide instructions on how to download your app on an iPhone (in case you do have access to a physical device.)

See the Technology Requirements for using Udacity.

What Will I Learn?

Projects

Create an iPhone app that records a conversation with you and a friend and plays it back to make you sound like a chipmunk or Darth Vader.

Syllabus

Lesson 1: Introduction (1 hour)

In this lesson, you'll get up and running with Xcode, the environment used to program iOS apps. You'll also learn to start reading Swift code by identifying important syntax.

Lesson 2: Making v1 of Our App (3 hours)

In this lesson, you'll create a simplified version of the final app by adding buttons, images, and text to a precise location on the phone. You'll also learn about MVC (Model-View-Controller) architecture and how it is used in app development.

We will introduce you to the following iOS classes in this lesson:

  • UIButton
  • UILabel
  • NSLayoutConstraint
  • UIView
  • UIViewController

We will also introduce you to the following framework:

  • UIKit

Lesson 3a: Navigating Between Two Screens in our App (2 hours)

In this lesson, you'll learn how to smoothly transition between two screens in our app. Throughout this lesson, we will discuss something called the View Lifecycle - this includes a conversation around how to load different objects in our app and how to handle low memory-related events.

We will introduce you to the following iOS classes in this lesson:

  • UINavigationController

Lesson 3b: Playing Audio (4 hours)

In this lesson, we'll play a short audio clip from a famous movie, and will tinker with this movie quote to make it play super fast and really slowly. Here, you'll also begin to establish credibility as a professional developer by authoring a public blog post on how to accomplish a specific task in Swift.

We will introduce you to the following iOS classes in this lesson:

  • AVAudioPlayer

We will also introduce you to the following framework:

  • AVFoundation

Lesson 4a: Recording Audio (2 hours)

In this lesson, you'll put finishing touches on the app by learning to record your voice. Here, we will explore a powerful iOS idea called Delegates, which makes it really easy to create apps.

We will introduce you to the following iOS classes in this lesson:

  • AVAudioRecorder

Lesson 4b: Adding Chipmunk and Darth Vader Effects (3 hours)

In this lesson, we will learn to alter the pitch of the audio we recorded in lesson 4a. This change will make your voice sound like a Chipmunk or Darth Vader. At the end of this lesson you'll have the know-how to install the app on your phone.

We will introduce you to the following iOS classes in this lesson:

  • AVAudioEngine
  • AVAudioPlayerNode
  • AVAudioUnitTimePitch

Final App Submission (1 hour)

In this final lesson, you will ensure that your app works according to a rubric we have designed, and will also have an opportunity to add new features to your app. We will also share with you a Code Review document that contains suggestions from an external reviewer on how to improve your code. We will request that you implement those suggestions to enhance your code and make it ready for the app store. Finally, to complete the course, you will submit your app to a Udacity coach for a thorough evaluation of your work.

Go Back