Course Outline

Create Smart Apps

Data Persistence in iOS: Core Data, SQLite, and UserDefaults Training Course

Rating

9/10

Duration

3 Days

Course Overview

This course provides a comprehensive understanding of data persistence in iOS applications, covering Core Data, SQLite, and UserDefaults. Participants will learn how to store, retrieve, and manage data efficiently, whether for simple user preferences or complex relational databases. The course includes hands-on exercises to implement Core Data entities, perform CRUD operations in SQLite, and manage lightweight storage with UserDefaults.

Format of Training

  • Instructor-led sessions
  • Hands-on lab exercises
  • Interactive discussions
  • Practical coding demonstrations

Course Objectives

  1. Understand the different data storage options in iOS.
  2. Use UserDefaults to store and retrieve simple user preferences.
  3. Implement SQLite for structured database storage.
  4. Work with Core Data to manage relational data efficiently.
  5. Perform CRUD (Create, Read, Update, Delete) operations using Core Data and SQLite.
  6. Optimize database performance for faster data retrieval and storage.
  7. Implement best practices for data security and persistence.

Prerequisites

Course Outline

Day 1: Introduction to Data Persistence and UserDefaults

Session 1: Overview of Data Persistence in iOS

  • Understanding temporary vs. permanent data storage.
  • Comparing UserDefaults, SQLite, and Core Data.
  • Choosing the right data storage approach for different use cases.

Session 2: Working with UserDefaults

  • What is UserDefaults, and when to use it?
  • Storing and retrieving simple data types (Strings, Integers, Booleans, Arrays).
  • Handling UserDefaults limitations and best practices.

Session 3: Implementing Property Lists for Small Data Storage

  • Introduction to Plist (Property List) files.
  • Reading and writing data using PropertyListSerialization.
  • Managing app settings and preferences with plist files.

Day 2: Implementing SQLite for Structured Data Storage

Session 1: Introduction to SQLite in iOS

  • Understanding SQLite and relational databases.
  • Setting up an SQLite database in an iOS project.
  • Creating tables and defining database schemas.

Session 2: Performing CRUD Operations in SQLite

  • Inserting, retrieving, updating, and deleting records in SQLite.
  • Using SQL queries to manipulate data.
  • Managing database transactions and rollbacks.

Session 3: Using SQLite with Swift and FMDB

  • Introduction to FMDB (SQLite wrapper for Swift).
  • Performing asynchronous database operations.
  • Optimizing database performance using indexing and caching techniques.

Day 3: Core Data and Advanced Data Management

Session 1: Introduction to Core Data

  • Understanding Core Data architecture and components.
  • Setting up Core Data in an iOS project.
  • Creating entities and attributes in the data model.

Session 2: Performing CRUD Operations with Core Data

  • Creating and fetching records using NSManagedObject.
  • Updating and deleting data efficiently.
  • Handling Core Data relationships and constraints.

Session 3: Optimizing Core Data for Performance

  • Implementing background context for smooth UI performance.
  • Using NSFetchedResultsController for optimized data fetching.
  • Handling Core Data migrations and schema updates.

Session 4: Hands-On Project: Implementing Data Persistence in an iOS App

  • Storing and retrieving user preferences using UserDefaults.
  • Creating and managing a SQLite database in an iOS app.
  • Implementing Core Data for structured relational data management.

Bespoke Option

We are open to customizing this program to align with your specific learning objectives. If your team has particular goals or areas they wish to focus on, we would be happy to tailor the course outline to meet those needs and ensure the program supports the achievement of your desired outcomes.

Further Learning Opportunities

Concurrency and Multithreading in iOS: GCD and Operation Queues Training Course

This course provides a deep dive into concurrency and multithreading in iOS applications, covering Grand Central Dispatch (GCD) and Operation Queues for handling background tasks efficiently.

Publishing iOS Apps: App Store Deployment and Monetization Training Course

This course provides a comprehensive guide to publishing iOS applications on the App Store, covering the app submission process, App Store guidelines, and monetization strategies.

iOS Native Features: Integrating Camera, GPS, Sensors, and Notifications Training Course

This course provides hands-on experience in integrating native iOS features, including GPS, camera, sensors (accelerometer, gyroscope), and push notifications.

Elementor #2126Data Persistence in iOS: Core Data, SQLite, and UserDefaults Training Course2

Private Session for Your Team

Elementor #2126Data Persistence in iOS: Core Data, SQLite, and UserDefaults Training Course2

Request More Information