About this Course

Persisting data is a core skill for any iOS developer. This course will teach you three techniques for storing data to your device’s hard drive: NSUserPreferences for small amounts of data, the Sandbox for files and Core Data when you have to play in the Big Leagues!

Course Cost
Free
Timeline
Approx. 2 months
Skill Level
Advanced
Included in Course
  • Rich Learning Content

  • Interactive Quizzes

  • Taught by Industry Pros

  • Self-Paced Learning

  • Student Support Community

Join the Path to Greatness

This free course is your first step towards a new career with the Become an iOS Developer Nanodegree Program.

Free Course

iOS Persistence and Core Data

Enhance your skill set and boost your hirability through innovative, independent learning.

Icon steps

Course Leads

  • Fernando Rodriguez
    Fernando Rodriguez

    Instructor

  • Eden Shapiro
    Eden Shapiro

    Instructor

What You Will Learn

Lesson 1

Simple Persistence

  • Learn about simple persistence and how to save small pieces of data.
  • How to set user preferences, using NSUserDefaults.
  • Practice setting simple preferences to an existing app.
Lesson 1

Simple Persistence

  • Learn about simple persistence and how to save small pieces of data.
  • How to set user preferences, using NSUserDefaults.
  • Practice setting simple preferences to an existing app.
Lesson 2

The iOS File System

  • Learn about the iOS File System, the “sandbox”.
  • See how to access these files using NSFileManager.
  • Use the file manager to save and read a file.
Lesson 2

The iOS File System

  • Learn about the iOS File System, the “sandbox”.
  • See how to access these files using NSFileManager.
  • Use the file manager to save and read a file.
Lesson 3

Core Data (Part 1)

  • Get introduced to the Core Data framework, Apple’s favorite framework for the model class.
  • Learn about the Core Data stack and how to create a model and managed model objects.
  • Begin work on a note-taking app.
Lesson 3

Core Data (Part 1)

  • Get introduced to the Core Data framework, Apple’s favorite framework for the model class.
  • Learn about the Core Data stack and how to create a model and managed model objects.
  • Begin work on a note-taking app.
Lesson 4

Core Data (Part 2)

  • Learn how tableviews adjust their display.
  • How to save and persist changes.
  • The important role Core Data plays in memory management.
Lesson 4

Core Data (Part 2)

  • Learn how tableviews adjust their display.
  • How to save and persist changes.
  • The important role Core Data plays in memory management.
Lesson 5

Important Extras

  • Important aspects of maintaining a persistent app.
  • Learn how to save images using Core Data.
  • Create a new version of a data model.
Lesson 5

Important Extras

  • Important aspects of maintaining a persistent app.
  • Learn how to save images using Core Data.
  • Create a new version of a data model.
Lesson 6

Core Data & Concurrency

  • Send lengthy tasks to a background queue.
  • Learn how Core Data tasks can run in different queues in a safe and efficient way.
  • Use parent and child contexts to propagate saves without blocking the user interface.
Lesson 6

Core Data & Concurrency

  • Send lengthy tasks to a background queue.
  • Learn how Core Data tasks can run in different queues in a safe and efficient way.
  • Use parent and child contexts to propagate saves without blocking the user interface.

Prerequisites and Requirements

This course assumes extensive iOS experience. Specifically, you’ve built several apps, know how to use core iOS libraries, and are familiar with networking and MVC design principles. Introduction to iOS App Development with Swift, UIKit Fundamentals, and iOS Networking with Swift 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.9 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.

Why Take This Course

Just like computers, your iPhone has two types of memory: main memory (RAM) and the hard drive. In all the apps you’ve written, you’ve interacted with RAM, but this memory is limited, and it’s important that the apps you design use it as efficiently as possible. To use the RAM efficiently it is important to be able to store data on the hard drive.

It is also important for your apps to maintain state when they are turned off. The apps you’ve built probably aren’t persistent, meaning that they don’t save their state to the device’s hard drive. As RAM is volatile, data is lost when the app stops running. In this course, you’ll learn how to persist the state of the device using NSUserDefaults and Core Data.

What do I get?
  • Instructor videos
  • Learn by doing exercises
  • Taught by industry professionals
Icon globe

Udacity 现已提供中文版本! A Udacity tem uma página em português para você! There's a local version of Udacity for you! Sprechen Sie Deutsch?

Besuchen Sie de.udacity.com und entdecken Sie lokale Angebote, unsere Partnerunternehmen und Udacitys deutschsprachigen Blog.

前往优达学城中文网站 Ir para a página brasileira Go to Indian Site Icon flag de Zu de.udacity.com continue in English