Related Nanodegree Program
Introduction to Programming
Earn a Nanodegree program certificate to accelerate your career.
Learn moreWeb Services, APIs, and JSON
Earn a Nanodegree program certificate to accelerate your career.
Learn moreApprox. 3 Months
Advanced
In this course, you’ll learn how to incorporate networking into your apps, so they can access data from around the world. You’ll learn how to harness the power of APIs to display images and retrieve movie data. At the end of the course, you’ll build the "On the Map" app which allows you to share interesting links, projects, or other information with fellow Udacity students.
This course assumes prior iOS experience. Specifically, you’ve built several apps, know how to use core iOS libraries, and are familiar with MVC design principles. Introduction to iOS App Development with Swift and UIKit Fundamentals are good courses to take if you need to familiarize yourself with these concepts.
The course also assumes basic familiarity with Git. Specifically, you will need to be able to clone Git repositories and checkout branches specific to each lesson. How to Use Git & GitHub is a great option if you need to brush up on these skills.
You will need access to a Mac computer running OS X 10.10 or later. However, you do not need an iPad or iPhone to complete the activities. All exercises can be completed using the iOS simulator built into Xcode.
See the Technology Requirements for using Udacity.
Without networking, mobile apps can only perceive, process, and present the data that is local to the host device. This greatly restricts the scope of problems which apps can solve and limits their overall utility. By incorporating networking, apps truly become "mobile" -- they can interact with interesting data using popular web services, coordinate multi-user activities, and build experiences that bring users together.
This course will cover concepts fundamental to communication over the network like HTTP, JSON, and authentication. These concepts are also highly transferrable to other platforms, languages, and applications. Additionally, it will mold your understanding of app design, especially when networking constraints are involved.
Instructor