k-coding

CoreData ( 2 ) 본문

iOS/Xcode

CoreData ( 2 )

chkhn_oiiu 2022. 5. 12. 23:40

CoreData (2)

 

오늘은 CoreData의 개념에 대해서 좀 더 알아보겠습니다.

 

이전 포스트에서 CoreData는 DB가 아님을 학습했었습니다.

 

CoreData의 특징,  개념

 

1 ) Entity(데이터가 저장될 구조)를 통해 데이터 저장 구조 정의

 

    -  테이블을 통해 데이터 저장 구조를 정의하는 다른 DB들과 다름

 

    -  Entity 구성

        -  Attribute : Entity의 하위 속성

        -  Relation  : Entity끼리의 관계

 

        -  Fatched Properties. :  템플릿 형태로 만들어 놓은 것

 

 

2 ) In - Memory 방식 존재

 

    -  사용하려는 모든 데이터는 메모리에 우선 로딩되는 과정

 

    -  영구 저장소를 사용하지 않고 인메모리 방식으로만 사용이 가능

 

 

3 ) 데이터를 객체로 취급

 

    -  하나의 행, 레코드 하나하나를 독립된 객체로 사용한다.

 

 

4 ) DAO패턴을 통해 데이터 접근 

 

    -  CoreData는 DAO객체를 자동으로 제공하는데,  SQLite처럼 DAO클래스 만들고, 해당 객체로 접근하는 것과 동일

 

 

5 ) 관리 객체 : MO 패턴

 

    -  VO(Value Object) 패턴과 동일한 방법으로 CoreData에서는 이를 MO패턴이라고 하며,

        객체와 관계형 데이터베이스 베이스를 자동으로 mapping시켜주는 ORM방식을 사용하여,

        MO클래스의 property를 entity의 각 attribute와 직접 연결시켜줌

 

 

6 ) 객체 그래프 관리자

 

    -  CoreData는 앱에서 Modal계층을 관리하는데 사용하는 프레임워크이자, 라이프 사이클이나 영속성 관리를 위한 기능을 제공

 

    -  객체끼리 연결이 가능하며, 연결된 객체는 영속적으로 동기화 (하나가 삭제되면 연결된 객체도 삭제)

 

 

 

 

 

'iOS > Xcode' 카테고리의 다른 글

CoreData ( 1 )  (0) 2022.05.10
Swift 뷰의 상태변화 메서드  (0) 2022.04.09
Realm ( 3 )  (0) 2022.04.07
Realm ( 2 )  (0) 2022.04.03
Realm ( 1 )  (0) 2022.03.30
Comments