关于此课程

Persisting data is a core skill for any iOS developer. This course will teach you two techniques for storing data to your device’s hard drive: the NSKeyedArchiver method and the more complex, but robust Core Data.

喜欢这门课程?加入“iOS 开发者”纳米学位,点此免费体验

学费
免费
学习时间
大约 2 months
难度
高级
你将获得

Rich Learning Content

Interactive Quizzes

Taught by Industry Pros

Self-Paced Learning

Student Support Community

开始你的旅程

学习这门免费课程,迈出通往iOS 开发者(英文)职业道路的第一步。

免费课程

iOS Persistence and Core Data

合作企业

通过创新性的自主学习方式,掌握新技能,提升竞争力。

Icon steps 54aa753742d05d598baf005f2bb1b5bb6339a7d544b84089a1eee6acd5a8543d
 
 

课程讲师

Jason Schatz
Jason Schatz

讲师

你将学到什么

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 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 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.

先修知识及要求

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.

查看使用优达学城的技术要求

为什么学习这门课程?

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 NSKeyedArchiver and Core Data.

我将获得什么?
Instructor videos Learn by doing exercises Taught by industry professionals