fetchRequest.sortDescriptors = [NSSortDescriptor(key: “id”, ascending: true, selector: “localizedStandardCompare:” )]

What’s new in Core Data Swift 3.0 https://blog.jayway.com/2016/08/12/whats-new-core-data-swift-3-0/

Beginner Guide to Core Data in Swift

https://www.bobthedeveloper.io/blog/beginner-guide-to-core-data-in-swift

Getting Started with Core Data Tutorial

https://www.raywenderlich.com/173972/getting-started-with-core-data-tutorial-2

CSV reading and writing library written in Swift. (3rd party library docs)

https://github.com/yaslab/CSV.swift#usage-for-reading-csv

my review point is 9/10

chatting app의 메시지 표시창 구성의 기본을 알수 있음.

https://youtu.be/hz1h_ColGy0?t=5m29s   NSDate()을 이용한 시간 변경

https://youtu.be/hz1h_ColGy0?t=7m   core data sorting

https://youtu.be/hz1h_ColGy0?t=8m   core data predicate 

https://youtu.be/hz1h_ColGy0?t=14m45s   array sort (using ‘compare’ method )

https://youtu.be/hz1h_ColGy0?t=17m10s   collection view controller에서 cell을 선택한 경우 다른 controller로 연결되게 하는 작업 (programticallay)

https://youtu.be/hz1h_ColGy0?t=20m10s   collection view 내용, 모양 변경 (programmatically)

core data blog posts by jacobs

튜토리얼 리스트

https://code.tutsplus.com/series/core-data-and-swift–cms-907

core data stack 기본 개념 구조

https://code.tutsplus.com/tutorials/core-data-and-swift-core-data-stack–cms-25065

xcode에서  .xcdatamodeld화일을 editor를 통해 열고 Data Model 를 만들고 수정하는 방법 설명

https://code.tutsplus.com/tutorials/core-data-and-swift-data-model–cms-25067

managed object(record) create, delete, fetch, update 하는 방법과 간단한 faulting으로 메모리 절약하는 방법 설명

https://code.tutsplus.com/tutorials/core-data-and-swift-managed-objects-and-fetch-requests–cms-25068

relationship 으로 연결된 managed object를 추가하는 방법과 sorting과 predicates이 첨가된 fetch방법 설명

https://code.tutsplus.com/tutorials/core-data-and-swift-relationships-and-more-fetching–cms-25070

core data 사용 실예에 대한 전반적인 내용  (NSFetchedResultsController 사용 방법 포함)

https://code.tutsplus.com/tutorials/core-data-and-swift-nsfetchedresultscontroller–cms-25072

core data 사용 실예에 대한 전반적인 내용2  (NSFetchedResultsController 사용 방법 포함2)

https://code.tutsplus.com/tutorials/core-data-and-swift-more-nsfetchedresultscontroller–cms-25078

migration 과 migration시 문제 처리방법

https://code.tutsplus.com/tutorials/core-data-and-swift-migrations–cms-25084

subclassing NSManagedObject

https://code.tutsplus.com/tutorials/core-data-and-swift-subclassing-nsmanagedobject–cms-25116

core data concurrency

https://code.tutsplus.com/tutorials/core-data-and-swift-concurrency–cms-25118


core data batch update

https://code.tutsplus.com/tutorials/core-data-and-swift-batch-updates–cms-25120

core data batch delete

https://code.tutsplus.com/tutorials/core-data-and-swift-batch-deletes–cms-25380

asynchronous fetch

https://code.tutsplus.com/tutorials/core-data-and-swift-asynchronous-fetching–cms-25123


core data by graig (youtube)

https://youtu.be/2idtKQ_NqTs    Introduction – Beginning Core Data

https://youtu.be/PMze4tT2w_U    – Getting Started – Beginning Core Data

https://youtu.be/62A-zAzc0aE    – NSManagedObject Subclasses – Beginning Core Data

4:16 에 나오는 코드 부분 개요

tab controller 그다음 navigation controller 그 안에서 제일 위의 top controller 에 접근한다. 그리고 respondsToSelector()를 통해 그안에 setManagedObjectContext() 가 있는지 확인하고 있으면 performSelector()를 이용 그 함수를 수행한다.

참고) http://weimenglee.blogspot.com/2014/09/swift-checking-if-method-exists.html

https://youtu.be/kNztJgGbQTM    – Editing and Deleting Data – Beginning Core Data

https://youtu.be/uJuLk1niBYA    -Relationships – Beginning Core Data

https://youtu.be/oK1K5h5EbZY    – Predicates and Sorting – Beginning Core Data

https://youtu.be/hRBr1mLZFaY    -Conclusion – Beginning Core Data

https://youtu.be/pp0zOJZcYhI    – Introduction – Intermediate Core Data

https://youtu.be/lMT96wUsjMQ    – Managed Object Contexts – Intermediate Core Data

https://youtu.be/lMT96wUsjMQ   – Conclusion – Intermediate Core Data

https://youtu.be/ZRwXbb1cOFw   -fetched result controller

NSManagedObject를 직접이용 core data 를 이용 managed objects 를 만들고 add,  fetch 하는 과정 (이렇게 사용하는 경우의 문제를 보완하는 것이 NSManagedObject를 subclassing 해서 사용하는 것이다. https://youtu.be/62A-zAzc0aE )

만들고 add 하는 과정

image

fetch하는 과정

image

core data 기본개념을 설명한 동영상

managed object model (managed object)

persistent store coordinator (persistent store)

managed object context 

초기에 생성될때 위의 순으로 만들어진다.

실제 managed object context를 거쳐 많은 작업(create, delete, fetch …. )을 하게된다.

persistent store 는 실제 data가 저장되는 장소를 말하며 (sqlite, binary store, in-memory store 가 될수 있다)