Course Description

MASTERING IOS CORE DATA WITH SWIFT

==============================================

***** Created with Xcode 7.2 and Swift 2.1 *****

==============================================

What is Core Data? Why should I know about Core Data?

Core Data is one of the most powerful framework that Apple has provided for developer. "Core Data is a framework that you use to manage the model layer objects in your application. It provides generalized and automated solutions to common tasks associated with object life cycle and object graph management, including persistence." - Source from Apple".

If you are passionate about learning mobile development for iOS and looking to take your iOS development skills to the next level, Core Data framework should be at the top of your list.

By the time you are done with Mastering iOS Core Data with Swift course, you will be ready and very confident to take on any Core Data project coming your way. On top of that, you will be one step closer to become a well rounded iOS developer.What's in it for me?

In this course I will take you on a journey in the world of Core Data. We will cover all the important aspects of Core Data:

  • Entity
  • Attribute Type
  • Relationships
  • ManagedObjectContext
  • ManagedObject
  • PersistenceStore
  • PersistenceStoreCoordinator
  • Handling JSON data
  • Handling plist data
  • Predicate
  • CompoundPredicate
  • Fetching
  • Batch Fetching and Update
  • Object Deletion
  • Asynchronous Fetching
  • NSFetchedResultsController
  • Aggregate Functions
  • Grouping
  • Caching
  • Performance Tuning and Best Practices
  • Data Model Versioning
  • Lightweight Migration
  • Manual Migration with Model Mapping
  • iCloud Synching

Throughout this course we will look in detail the Core Data framework to provide data storage functionality in iOS applications. We will start by creating a simple app that is utilizing Core Data framework, building our own Core Data stack and eventually using all different Core Data features into our application.

Perfomance Tuning and Best Practices

We will cover the various ways on fetching our data and how to efficiently using Core Data in our app. Unit testing and performance tuning will be an important part on how we can monitor our app performance in conjunction with Core Data in our application.

Along with Core Data versioning, migration and iCloud integration, I will take you on developing 5 iOS applications and how we can integrate all of these components into Core Data.

Do at your own pace

Lots of students have different methods of learning. Through out this course I will provide both the starter and final Xcode project solution, so you can either follow along one step at a time or you can jump directly to the final solution. And by the end of this Mastering iOS Core Data with Swift course, you should be comfortable and ready to integrate Core Data framework in your application.

Target Audience: All iOS developer that would like to take their skills to the next level.

What are the requirements?

  • A Mac laptop or iMac
  • Xcode 7.x
  • Some knowledge of Swift development

Senior Web and Mobile Developer

Andi Setiyadi

Hi! I am Andi. I have a degree in MS Information Systems and been working for a Fortune Top 25 Company for the last few years. I am passionate about mobile development and have been using both the hybrid and native approach on my projects. I fell in love with Swift and been part of the early adopter. I truly believe Swift will become one of the development languages of the future. I live in beautiful state of Colorado in the United States and while I am not busy coding, I enjoy biking and skiing. My motto is never stop learning and share the knowledge. Having said that, I am ready to take you on the journey of Swift development world and hope you will be a part of it.

Course curriculum

  • 2

    INTRODUCTION TO CORE DATA

  • 3

    CORE DATA - DEEP DIVE

    • Core Data Stack

    • Core Data Stack (Xcode Project)

    • Entity Relationship

      FREE PREVIEW
    • Entity Relationship (Xcode Project)

    • JSON Data and Dictionary

    • JSON Data and Dictionary (Xcode Project)

    • Alternative: Handling pList Sample Data

    • Alternative: Handling pList Sample Data (Xcode Project)

    • Predicate - Part 1

    • Predicate - Part 2

    • Predicate (Xcode Project)

    • CompoundPredicate and Sorting - Part 1

    • CompoundPredicate and Sorting - Part 2

    • CompoundPredicate and Sorting (Xcode Project)

    • Aggregate Function - Part 1

    • Aggregate Function - Part 2

    • Aggregate Function (Xcode Project)

    • Asynchronous Fetching

    • Asynchronous Fetching (Xcode Project)

    • One To Many Implementation

    • One To Many Implementation (Xcode Project)

    • NSFetchedResultsController

    • NSFetchedResultsController (Xcode Project)

    • Delete Object

    • Delete Object (Xcode Project)

    • Batch Update

    • Batch Update (Xcode Project)

    • Group and Cache

    • Group and Cache (Xcode Project)

  • 4

    PERFORMANCE TUNING

    • Dealing with Large Images

    • Dealing with Large Images (Xcode Project)

    • Batch Size Fetching

      FREE PREVIEW
    • Batch Size Fetching (Xcode Project)

    • Selective and Priority Fetching

    • Selective and Priority Fetching (Xcode Project)

  • 5

    MODEL VERSION AND DATA MIGRATION

  • 6

    ICLOUD INTEGRATION

    • How to enroll to Apple Developer Program

    • How to create iTunes test account

    • iCloud Sync

    • iCloud Sync (Xcode Project)

  • 7

    WHERE DO I GO FROM HERE?

    • What's Next?